Scrapy实战篇(七)之Scrapy配合Selenium爬取京东商城信息(下)
2017-09-21 19:10
232 查看
之前我们使用了selenium加Firefox作为下载中间件来实现爬取京东的商品信息。但是在大规模的爬取的时候,Firefox消耗资源比较多,因此我们希望换一种资源消耗更小的方法来爬取相关的信息。
下面就使用selenium加PhantomJS来实现之前的相同的逻辑。
这里需要修改的就是spider.py文件,其余的部分并不需要做出修改,我们给phantomjs添加一个User-Agent信息,并且设置不加载图片,这样将会加快渲染的速度。
spider.py
from scrapy import Spider,Request from selenium import webdriver class JingdongSpider(Spider): name = 'jingdong' def __init__(self): SERVICE_ARGS = ['--load-images=false', '--disk-cache=true', '--ignore-ssl-errors=true'] self.browser = webdriver.PhantomJS(service_args=SERVICE_ARGS) self.browser.set_page_load_timeout(30) def closed(self,spider): print("spider closed") self.browser.close() def start_requests(self): start_urls = ['https://search.jd.com/Search?keyword=%E6%96%87%E8%83%B8&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&suggest=1.his.0.0&page={}&s=1&click=0'.format(str(i)) for i in range(1,10,2)] for url in start_urls: yield Request(url=url, callback=self.parse) def parse(self, response): selector = response.xpath('//ul[@class="gl-warp clearfix"]/li') print(len(selector)) print('---------------------------------------------------')
执行程序,效果是一样的。
相关文章推荐
- Scrapy实战篇(六)之Scrapy配合Selenium爬取京东信息(上)
- 配合scrapy,用请求方式抓取一些网站内容。例如抓取360手机应用APP信息。
- 爬虫框架Scrapy实战之批量抓取招聘信息
- Scrapy爬虫实战一:获取中影国际影城信息
- [置顶] scrapy爬取京东商城某一类商品的信息和评论(一)
- scrapy实战(一)-------------爬取链家网的二手房信息
- Python爬虫框架Scrapy实战之批量抓取招聘信息
- Python爬虫框架Scrapy实战 - 抓取BOSS直聘招聘信息
- [置顶] scrapy爬取京东商城某一类商品的信息和评论(二)
- python爬虫实战笔记---以轮子哥为起点Scrapy爬取知乎用户信息
- Python爬虫框架Scrapy实战教程---定向批量获取职位招聘信息
- 【项目实战】使用Scrapy爬取商品信息并写入MySQL数据库
- 爬虫框架Scrapy实战之批量抓取招聘信息--附源码
- Python爬虫框架Scrapy实战之定向批量获取职位招聘信息
- Python爬虫框架Scrapy实战之定向批量获取职位招聘信息
- python 爬虫学习三(Scrapy 实战,豆瓣爬取电影信息)
- 爬虫框架Scrapy实战之批量抓取招聘信息
- scrapy实战——利用CrawlSpider爬取腾讯社招全部岗位信息(进行有一定深度的爬取)
- scrapy实战--登陆人人网爬取个人信息
- Python爬虫框架Scrapy实战 - 抓取BOSS直聘招聘信息