Scrapy-Splash爬取淘宝排行榜(一)
一 引言
日前,自己因项目需要需要爬取淘宝排行榜,而淘宝因为用了很多的AJAX技术,不能用普通的爬虫爬取,于是我这里就想用如一些集成了PhantomJS或类似的python爬虫框架。一开始自己尝试了pyspider,但是自己对pysider并不是很熟练,而且网上这方面资料也很少,于是弃坑转为自己较为熟悉的scrapy框架。经过一番搜索,在Github发现了这个,scrapy-splash,由scrapy框架开发者维护,可以作为scrapy的中间件使用,从而提供对AJAX页面的JS解析。
二 安装
这里不详细说明scrapy和scrapy-splash的安装过程,可参考下面给出的官方链接
scrapy框架的安装
scrapy框架安装
scrapy-splash安装
scrapy-splash安装
三 使用scrapy-splash
1.要使用scrapy-splash,可以参考官方的文档
也参考我下面的方法(不过,我这里这是很简单的使用了scrapy-splash,并没有用到其他功能。如果自己还要更高阶的需求,如使用redis作为消息队列等,就必须要继承scrapy_splash.SplashAwareFSCacheStorage
,并且对url判断使用splash自己的fingerprint scrapy_splash.splash_request_fingerprint
) 所以更高阶的用法还请参考官方文档
2.配置:
1.设置下载中间件:
DOWNLOADER_MIDDLEWARES = {'scrapy_splash.SplashCookiesMiddleware': 723,'scrapy_splash.SplashMiddleware': 725,'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware': 810,
}
2.设置爬虫中间件
SPIDER_MIDDLEWARES = {'scrapy_splash.SplashDeduplicateArgsMiddleware': 100,
}
3.使用splash解析,要在配置文件中设置:
SPLASH_URL = 'http://127.0.0.1:8050/'
4.配置消息队列所使用的过滤类
DUPEFILTER_CLASS = 'scrapy_splash.SplashAwareDupeFilter'
5.配置消息队列需要使用的类
HTTPCACHE_STORAGE = 'scrapy_splash.SplashAwareFSCacheStorage'
完整的配置文件可以参考这里:
淘宝爬虫的配置文件
接下来正式爬取工作请参考下一篇博文:
Scrapy-Splash爬取淘宝排行榜(二)
Scrapy-Splash爬取淘宝排行榜(一)相关推荐
- Scrapy-Splash爬取淘宝排行榜(二)
四 开始爬取 1.首先分析淘宝排行榜的设置.在这里,商品被分为服饰,数码家电,化妆品,母婴,食品,文体,家具,车|玩具|宠物.而点开每个大类,又可以看到商品被分为很多小类.点开任意小类,往下拉就可以看 ...
- python+scrapy简单爬取淘宝商品信息
python结合scrapy爬取淘宝商品信息 一.功能说明: 已实现功能: 通过scrapy接入selenium获取淘宝关键字搜索内容下的商品信息. 待扩展功能: 爬取商品中的全部其他商品信息. 二. ...
- Scrapy-Splash爬取淘宝排行榜(三)
五 写spider 1.知道了要爬取的内容,所以,我们首先在start_urls中设置如下: start_urls=['https://top.taobao.com/index.php?topId=T ...
- 爬虫案例 --- Python 爬取淘宝数据存到数据库
可以做爬虫的语言有很多,如 PHP.Java.C/C++.Python等等... 1)PHP语言 虽然是世界上最好的语言,但是他天生不是干这个的,而且对多线程.异步支持不够好,并发处理能力很弱.爬虫是 ...
- Python爬虫学习之爬取淘宝搜索图片
Python爬虫学习之爬取淘宝搜索图片 准备工作 因为淘宝的反爬机制导致Scrapy不能使用,所以我这里是使用selenium来获取网页信息,并且通过lxml框架来提取信息. selenium.lxm ...
- python爬虫学习(三):使用re库爬取淘宝商品,并把结果写进txt文件
第二个例子是使用requests库+re库爬取淘宝搜索商品页面的商品信息 (1)分析网页源码 打开淘宝,输入关键字"python",然后搜索,显示如下搜索结果 从url连接中可以得 ...
- [Python3网络爬虫开发实战] 7-动态渲染页面爬取-4-使用Selenium爬取淘宝商品
在前一章中,我们已经成功尝试分析Ajax来抓取相关数据,但是并不是所有页面都可以通过分析Ajax来完成抓取.比如,淘宝,它的整个页面数据确实也是通过Ajax获取的,但是这些Ajax接口参数比较复杂,可 ...
- 利用Selenium爬取淘宝商品信息
文章来源:公众号-智能化IT系统. 一. Selenium和PhantomJS介绍 Selenium是一个用于Web应用程序测试的工具,Selenium直接运行在浏览器中,就像真正的用户在操作一样. ...
- 爬取淘宝定价需要多久时间_如何对设计工作进行定价—停止收取时间并专注于价值
爬取淘宝定价需要多久时间 Pricing creative work is a new concept for most freelancers who are starting their busi ...
最新文章
- APK在AndroidManifest.xml常用权限总结
- 以python入门教程新世界-50⾏python爬⾍代码, 带你正确打开知乎新世界!
- 【bzoj1965】 [Ahoi2005]SHUFFLE 洗牌 欧拉定理
- HDOJ acm steps 3.1.1
- python math.asin
- Macbook pro笔记本键盘失灵了(u,i,o,j,k,l,k,m无效了)解决办法
- 'OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效。
- IEEE 回应禁止华为系审稿人;Wi-Fi 联盟等恢复华为成员资格;Angular 8 正式发布 | 极客头条...
- 李飞飞创建的AI4All启动首次mentorship计划
- 华为模拟器ensp与真实机器连接使用的配置内容二
- 高程数据的下载以及运用高程数据进行坡度和坡向的计算
- 最好用的100个黑科技网站
- 在线作图丨数据降维分析④——NMDS分析
- 2020蚂蚁森林自动收能量-保持更新
- LeetCode——反转链表
- 在PS中如何旋转箭头
- mysql数据库安全加固_数据库安全加固系统
- JVM性能调优5_编写高效优雅Java程序__享学课堂
- 汽车维修管理系统(RPMS)项目
- 0511 backlog
热门文章
- python语言描述兰伯特pdf_数据结构PYTHON语言描述 [美] Kenneth A. Lambert 兰伯特
- 2020排名前十的超级计算机,2020中国高性能计算机TOP100榜单揭晓
- 关于前端的一些学习记录(1)
- 计算机网络总结(1)
- 计算机网络管理技术参考文献,报文网络论文,关于计算机网络管理相关技术相关参考文献资料-免费论文范文...
- Jenkins内存占用过高的问题
- elasticsearch 关键词查询-实现like查询
- linux合并pdf命令,科学网—[转载]linux下利用命令行工具pdftk对PDF进行合并分割(转载) - 崔鹏碧的博文...
- 2022电动两轮市场格局分化,九号异军突起
- 你执手嫣然入了画幕,我漠然割舍断了归途