自动化爬取淘宝数据--(保存到文本中)
普通版本的爬取淘宝网页
#淘宝商品信息
#从selenium中引入webdriver
from selenium import webdriver
import time
#输入查询关键词
keyword=input('请输入要查询的商品关键词:')
#1.创建firefox浏览器对象
driver=webdriver.Firefox()
#2.打开淘宝网址
driver.get('http://www.taobao.com')
#3.通过id找到输入框
search_input=driver.find_element_by_id('q')
#4.输入搜索内容
search_input.send_keys(keyword)
#5.通过class找到搜索按钮
search_btn=driver.find_element_by_class_name('btn-search')
#6.点击搜索按钮
search_btn.click()
#休眠2秒
time.sleep(2)
#1.打开文件 encoding=utf-8 指定文件的字符编码
file_handle=open('%s.txt'%keyword,'w',encoding='utf-8')for x in range(1,2):print('正在获取第%s页数据,请稍后......'%x)#for 循环执行5次for x in range(1,11,2):#休眠1秒time.sleep(1)#把x转换小数j=x/10#拼接让浏览器滚动的js代码#%f float类型数据占位符js='document.documentElement.scrollTop = document.documentElement.scrollHeight *%f '%j#执行让浏览器滚动的js代码driver.execute_script(js)
有的产品信息搜索时 属性和属性值不同:
#查找当前页所有的商品信息,返回的是一个列表(elements查找多个)#电脑,鼠标、键盘.........class_name填写 info-cont#其他的产品........class_name填写 J_MouserOnverReqshops=driver.find_elements_by_class_name('J_MouserOnverReq')# print(len(shops))#如果没有找到数据,换另一种方式去找if len(shops)==0:shops = driver.find_elements_by_class_name('info-cont')
#for循环遍历列表,取出每一个商品的信息for shop in shops:#输出查看商品信息# print(shop.text)file_handle.write(shop.text)file_handle.write('\n\n')
找到下一页的法一:
# # 找到下一页,点击# next=driver.find_element_by_link_text('下一页')# next.click()
找到下一页法二:
#找到下一页,点击#找到li标签下一页next_li=driver.find_element_by_class_name('next')# print(next_li.text)next_li.click()
函数版本的淘宝自动化爬取
初始化时传入keyword,self.keyword,是它本身具有的属性,将传入的keyword赋值给self.keyword
#淘宝商品信息
#从selenium中引入webdriver
from selenium import webdriver
import time#声明一个类
class TaoBao(object):#初始化时,传递要查询的关键词def __init__(self,keyword):self.keyword=keyworddef start_taobao(self):#1.创建firefox浏览器对象driver=webdriver.Firefox()#2.打开淘宝网址driver.get('http://www.taobao.com')#3.通过id找到输入框search_input=driver.find_element_by_id('q')#4.输入搜索内容search_input.send_keys(self.keyword)#5.通过class找到搜索按钮search_btn=driver.find_element_by_class_name('btn-search')#6.点击搜索按钮search_btn.click()#休眠2秒time.sleep(2)#1.打开文件 encoding=utf-8 指定文件的字符编码file_handle=open('%s.txt'%self.keyword,'w',encoding='utf-8')for x in range(1,2):print('正在获取第%s页数据,请稍后......'%x)#for 循环执行5次for x in range(1,11,2):#休眠1秒time.sleep(1)#把x转换小数j=x/10#拼接让浏览器滚动的js代码#%f float类型数据占位符js='document.documentElement.scrollTop = document.documentElement.scrollHeight *%f '%j#执行让浏览器滚动的js代码driver.execute_script(js)#查找当前页所有的商品信息,返回的是一个列表(elements查找多个)#电脑,鼠标、键盘.........class_name填写 info-cont#其他的产品........class_name填写 J_MouserOnverReqshops=driver.find_elements_by_class_name('J_MouserOnverReq')# print(len(shops))#如果没有找到数据,换另一种方式去找if len(shops)==0:shops = driver.find_elements_by_class_name('info-cont')#for循环遍历列表,取出每一个商品的信息for shop in shops:#输出查看商品信息# print(shop.text)file_handle.write(shop.text)file_handle.write('\n\n')#找到下一页,点击#找到li标签下一页next_li=driver.find_element_by_class_name('next')# print(next_li.text)next_li.click()# 3.关闭文件# 退出浏览器driver.quit()#如果是从当前文件直接运行的,执行以下代码
if __name__=='__main__':keyword=input('请输入查询关键词:')tb=TaoBao(keyword)tb.start_taobao()
#输出
# print(__name__)
#__name__值为__main__表示是从当前文件直接运行
#__name__ 值为 当前文件名称 表示别的文件引用执行的
自动化爬取淘宝数据--(保存到文本中)相关推荐
- 如何使用selenium自动化爬取淘宝信息
如何使用自动化爬取淘宝信息 1.首先我们要确保安装了谷歌浏览器,并且是84.0版本 因为接下来我们要用到自动化这款软件,必须得和版本相匹配,否则就会失败 2.然后接下来,打开我们的taobao文件选择 ...
- 使用自动化工具selenium爬取淘宝数据!这个框架太牛逼了!
准备工作 爬虫所需的库和浏览器驱动 本次爬虫所需要的库 selenium #可使用pip命令安装 pip install selenium csv re time 安装浏览器驱动 以谷歌浏览器为例,在 ...
- 爬虫案例 --- Python 爬取淘宝数据存到数据库
可以做爬虫的语言有很多,如 PHP.Java.C/C++.Python等等... 1)PHP语言 虽然是世界上最好的语言,但是他天生不是干这个的,而且对多线程.异步支持不够好,并发处理能力很弱.爬虫是 ...
- python不登陆爬取淘宝数据_python登录并爬取淘宝信息代码示例
本文主要分享关于python登录并爬取淘宝信息的相关代码,还是挺不错的,大家可以了解下. #!/usr/bin/env python # -*- coding:utf-8 -*- from selen ...
- 程序员怎样买东西呢---selenium爬取淘宝数据
江山代有才人出,各领风骚数百年 --清·赵翼 <论诗五首·其二> 长江后浪推前浪,浮事新人换旧人 --宋·刘斧<青琐高议> 东西用时间长了就该换新的了,特别是手机,这几年发展太 ...
- python爬取淘宝数据魔方_淘宝数据魔方技术架构解析
淘宝网拥有国内最具商业价值的海量数据.截至当前,每天有超过30亿的店铺.商品浏览记录,10亿在线商品数,上千万的成交.收藏和评价数据.如何 从这些数据中挖掘出真正的商业价值,进而帮助淘宝.商家进行企业 ...
- python爬取淘宝数据魔方_《淘宝数据魔方技术架构解析》阅读笔记
淘宝网拥有国内最具商业价值的海量数据.截至当前,每天有超过30亿的店铺.商品浏览记录,10亿在线商品数,上千万的成交.收藏和评价数据.如何从这些数据中挖掘出真正的商业价值,进而帮助淘宝.商家进行企业的 ...
- python爬取淘宝数据魔方_淘宝数据魔方技术架构解析阅读心得
淘宝网拥有国内最具商业价值的海量数据,而帮助消费者进行理性的购物决策,是淘宝数据平台与产品部的使命.为此,我们进行了一系列数据产品的研发,比如为大家所熟知的量子统计.数据魔方和淘宝指数等.本文将以数据 ...
- python模拟登录爬取数据_python 模拟登录爬取淘宝数据
淘宝现在需要登录才能爬取搜索商品,首先在登录页面登录chrome F12 开发者模式抓包 登录请求 发现有一个post请求,这个就是登录的请求了,看下面的from data 登录信息 由from da ...
最新文章
- 某程序员吐槽:媳妇要给孩子报少儿编程班,将来继续做程序员!以后要看到穿着纸尿裤的P7!...
- 2018.9.8-9.8 统计学课程笔记(2)-参数统计
- php cms word导入,phpcms V9文章编辑器不能按word文档复制过来的段头缩进显示
- Windows 关闭进程例子
- php上老师查看作业,请老师查阅俺的作业效果,看还满意不
- 【论文阅读】医疗影像分割中的半监督学习Semi-supervised
- 世界读书日,给你们送大福利!
- 小白学电脑计算机的组成,新手学电脑步骤,从零开始学电脑
- 轨迹路线生成与运动插件 Curvy Spline 的使用
- 592. 分数加减运算 : 表达式计算入门题
- 这个阿里网盘要下线了。。
- 抓住七月的尾巴,出门放松一下
- 概率分布函数--二项分布poisson分布
- BDC模式与OKCODE、 CALL TRANSACTION用法
- XPO的UpCasting
- 28. 如何使用 SAP OData 服务向 ABAP 服务器上传文本格式和 Excel,PDF 等格式的文件
- APP遇到大量的真实手机号刷注册用户该如何应对?
- Ceilometer Distributed Alarm
- 关于谢尔宾斯基三角(Sierpinski)的讲解
- 解决swagger几种报错问题
热门文章
- 如何查看自己WiFi密码
- 真正可用的获取任意进程的内存使用率 和任务管理器一模一样
- html5支持.9.png,javascript-当Alpha透明时,HTML5 Canvas转换为PNG会将所有通道归零
- 报表在linux下部署后中文变成小方块
- cisp含金量怎么样?
- 解决element 分页组件,搜索过后current-page 绑定的数据变了,但是页面当前页码并没有变的问题
- BootCamp Intel Mac上安装Windows全教程
- 谷粒商城基础篇——Day01
- 全面解读Moby和LinuxKit,Docker称沟通不善招致误解
- 小程序源码:网课查题微信小程序源码下载,题库资源丰富自动采集,支持语音拍照识别