最近一直在玩dota2自走棋,就好奇巨鸟多多糖果在淘宝上总共赚了多少钱?就用selenium爬取淘宝上dota2自走棋糖果的售价和销量。只爬了前2页,后面基本都是销量0,就没爬。不算其他税什么的,就单纯用售价*销量来粗略估算利润,最后利润是一千多万,哦吼~好像还是一个月销量吧~

遇到的问题:

Q1:现在selenium程序会被淘宝识别,搜索时强制转到淘宝账号登录页面

A1:用第三方的微博登录淘宝账号

import re
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
from bs4 import BeautifulSoup
from decimal import DecimalKEYWORD = 'dota2自走棋糖果'
WEIBO_NAME = '你的微博用户名'
WEIBO_PASSWORD = '你的微博密码'def calculate_the_profit(prices_item, sales_item):''' 计算利润=销量*售价 '''temp_sum = Decimal(0)# 理论上销量和售价一一对应,这里不做验证for i in range(len(sales_item)):sale = Decimal(re.match('(\d+)', sales_item[i].text).group())price = Decimal(prices_item[i].text)print(price, sale)temp_sum += price * saleprint(temp_sum)return temp_sumdef crawl_information(browser):''' 爬取每页每个商品的销量和售价 '''# 抓取商品的价格和销量soup = BeautifulSoup(browser.page_source, 'lxml')prices_item = soup.select('.price.g_price.g_price-highlight strong')sales_item = soup.find_all(class_='deal-cnt')return prices_item, sales_itemdef go_to_the_next_page(browser):''' 前往下一个页面 '''wait = WebDriverWait(browser, 10)next_page = wait.until(EC.element_to_be_clickable((By.XPATH, "//a[@data-value='44']")))next_page.click()def get_taobao_page(browser):''' 从淘宝首页进入搜索关键字商品,控制网页 '''sum = Decimal(0)url = 'https://www.taobao.com'browser.get(url)# 取货搜索框,输入关键字,然后回车进行搜索input = browser.find_element_by_id('q')input.send_keys(KEYWORD)input.send_keys(Keys.ENTER)# 由于淘宝自身限制,用selenium爬取网页内容会要求登录,这里用第三方微博登录# 从二维码登录切换到密码登录login_swith = browser.find_element_by_class_name('login-switch')login_swith.click()# 点击微博登录weibo_login = browser.find_element_by_class_name('weibo-login')weibo_login.click()# 输入用户名username_input = browser.find_element_by_name('username')username_input.send_keys(WEIBO_NAME)# 输入密码password_input = browser.find_element_by_name('password')password_input.send_keys(WEIBO_PASSWORD)# 提交weibo_submit = browser.find_element_by_class_name('W_btn_g')weibo_submit.send_keys(Keys.ENTER)# 此时登录成功就会跳转到要搜索的页面,先按销量排序,显示等待元素加载wait = WebDriverWait(browser, 10)sale_sort = wait.until(EC.element_to_be_clickable((By.XPATH, "//a[@data-value='sale-desc']")))sale_sort.click()# 等待网页内容排序的时间time.sleep(3)# 然后爬取商品信息prices_item, sales_item = crawl_information(browser)# 待爬取完毕后,算计当前页利润总和,累计进总和sum += calculate_the_profit(prices_item, sales_item)# 前往下一页go_to_the_next_page(browser)time.sleep(3)prices_item, sales_item = crawl_information(browser)sum += calculate_the_profit(prices_item, sales_item)print(sum)if __name__ == '__main__':browser = webdriver.Chrome()get_taobao_page(browser)browser.close()

爬取淘宝上dota2自走棋糖果利润相关推荐

  1. python爬虫淘宝手机_【Python3 爬虫】14_爬取淘宝上的手机图片

    现在我们想要使用爬虫爬取淘宝上的手机图片,那么该如何爬取呢?该做些什么准备工作呢? 首先,我们需要分析网页,先看看网页有哪些规律 我们可以看到左侧是主题市场,将鼠标移动到[女装/男装/内衣]这一栏目, ...

  2. Python 002- 爬虫爬取淘宝上耳机的信息

    参照:https://mp.weixin.qq.com/s/gwzym3Za-qQAiEnVP2eYjQ 一般看源码就可以解决问题啦 1 #-*- coding:utf-8 -*- 2 import ...

  3. Python requests爬取淘宝商品信息

    作者:achen 联系方式:wh909077093 这里记一下大概的思路以及实现方法,有基础的小伙伴看了基本就能实现了,如果有业务需要可以联系我哈哈哈哈哈哈 本文代码参考猪哥66的思路 项目内容 指定 ...

  4. 爬取淘宝任意商品数据,你上你也行

    文章目录 构造url 分析页面结构 爬取多页数据 最后 构造url 第一页url https://s.taobao.com/search?q="面膜" 第二页url https:/ ...

  5. python爬虫学习(三):使用re库爬取淘宝商品,并把结果写进txt文件

    第二个例子是使用requests库+re库爬取淘宝搜索商品页面的商品信息 (1)分析网页源码 打开淘宝,输入关键字"python",然后搜索,显示如下搜索结果 从url连接中可以得 ...

  6. 利用Selenium爬取淘宝商品信息

    文章来源:公众号-智能化IT系统. 一.  Selenium和PhantomJS介绍 Selenium是一个用于Web应用程序测试的工具,Selenium直接运行在浏览器中,就像真正的用户在操作一样. ...

  7. 爬取淘宝定价需要多久时间_如何对设计工作进行定价—停止收​​取时间并专注于价值

    爬取淘宝定价需要多久时间 Pricing creative work is a new concept for most freelancers who are starting their busi ...

  8. python词云代码手机_【云计算】爬取淘宝手机品牌词云分析(python)

    本文主要向大家介绍了[云计算]爬取淘宝手机品牌词云分析(python),通过具体的内容向大家展现,希望对大家学习云计算有所帮助. 淘宝手机信息的爬取,请看这边博客(点击这里),然后我们利用其中保存的文 ...

  9. 用Python爬取淘宝2000款套套,我发现了一个重要秘密

    点击上方"码农突围",马上关注,每天早上8:50准时推送 真爱,请置顶或星标 一.淘宝商品信息爬取 这篇文章主要是讲解如何爬取数据,数据的分析放在下一篇.之所以分开是因为爬取淘宝遇 ...

最新文章

  1. 北京中天荣泰视觉检测 仿真
  2. boost::mp11::mp_empty相关用法的测试程序
  3. Vue中的三种Watcher
  4. centos7中安装docker
  5. blender怎么移动骨骼_宝宝偏头怎么办?千万别错过这个矫正“黄金期”!
  6. 原价399,限时1元!7天人工智能入门训练营:带你从0掌握机器学习算法!
  7. 测试VGA12H直接写屏速度 V1.1
  8. poj 3280 Cheapest Palindrome (dp)
  9. 2021最新计算机二级C语言试题
  10. Linux I2C总线驱动调试之i2c-tools工具使用
  11. 怎样设置CCProxy
  12. 四足机器人站立姿态解算-几何方法
  13. 2020-11-24--源赖氏佐天
  14. 关于物联网卡(二):如何使用物联网卡
  15. 采用计算机辅助数据收集,可用性测试中计算机辅助数据收集和分析机制研究
  16. 三、运算符 | Verilog
  17. Java开发高频英语单词800+,熟悉后英文障碍又少了
  18. css3文字水平垂直居中对齐的几种方法
  19. TYPEC线改成OTG线制作
  20. 基于FPGA的啸叫检测与抑制系统设计与实现verilog

热门文章

  1. GPIO模拟红外发射
  2. 光模块的中心波长和传输距离
  3. 逃跑吧少年服务器维护时间,逃跑吧少年—《逃跑吧!少年》3月12日PC更新公告...
  4. 数据分析报告怎么写(下)
  5. python一键去除图片水印,含简单可视化界面
  6. iverilog Makefile 阅读
  7. Boyer-Moore 算法讲解
  8. VL50-简易秒表,60秒钟进位1分钟,60分钟是一小时,设计进制到60分钟时暂停计数
  9. 文本域输入的内容正确的回显
  10. PS老照片一键修复工具,你的必备软件之一