最近在学习 Python 的爬虫。以前坚持用 nodejs 做爬虫。前两天闲得无聊,在慕课上看了下 scrapy 的课程。然后发现这个框架的设计真模块化。所以就开始动手用 scrapy 爬取一些东西。然后我的目标网站是个 drupal 做的。分页抓取的时候,首页是正常的,爬取第二页的时候,大概率是抛错提示:404,要么就是给我返回了一些脏数据。
这个网站还真是老谋深算啊。然后我仔细分析了下网站的请求头。然后加上了如下两条,请求就正常了:
request.headers[‘accept’] = ‘text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8’
request.headers[‘cache-control’] = ‘no-cache’
看来还是得注意请求头的细节。