项目要求:爬取淘宝某领域下的商品名称,价格,评论。
(我贼怂,如果阿里巴巴的朋友发现,请联系我,我立刻删帖,谢谢。)
一、构思流程
二、分步分析
(一)、测试cookie是否能够满足我们爬取相应数据的要求
(确定了cookie能满足我们的需求,才能确保项目的可行性)
1、安装scrapy框架(直接pip安装就行)
pip install scrapy
2、创立项目对应爬虫
>cd 相应目录
相应目录>scrapy startproject taobao
相应目录>cd taobao2
相应目录\taobao>scrapy genspider nanzhuang taobao.com
3、修改爬虫文件,使用cookie进入搜索页面
在知道项目目标之后查找元素
其中蓝色框中的各个小项就是我们的目标。
我们手动点开这些小项后却发现需要登陆(未登录状态)
接着手动登录,登录后刷新获取网页的cookie.
获取cookie后将其写入爬虫的setting文件中
然后尝试修改nanzhuang.py进行爬取
import scrapy
class XuexiSpider(scrapy.Spider):
name = 'xuexi'
allowed_domains = ['taobao.com']
start_urls = ['https://www.taobao.com/markets/nanzhuang/2017new']
def parse(self, response):
for it in response.xpath('//*[@id="sm-nav-2014"]/div[2]/div[2]/div/div[2]/dl'):
#使用xpath+for循环的模式遍历所有小项
for n in it.xpath('./dd'):
try:
li = n.xpath('./a/@href').extract()[0]
yield scrapy.Request(li,callback = self.parse_detail)
#将获取到的网址返回进行访问和解析
except:
pass
def parse_detail(self,response):
pass
运行一次爬虫试试
爬虫文件夹目录>scrapy crawl nanzhuang
如果结果为以下,说明你的cookie能让爬虫爬取相应页面