scrapy爬虫实践之抓取拉钩网招聘信息(4)

拉勾的302搞的我不心力憔悴,几乎失去了动力继续再研究拉勾爬虫…实际上,这种无力感很大程度上来源于知识结构的匮乏(尤其是基础方面)和毫无进展带来的挫败感。

于是乎去读基础教程《learning scrapy》,准备从0开始跟着教材敲一遍代码。学习中,因测试需要去爬了一下51job,没想到,51job竟然没什么反爬机制,只要设置一个user-agent就可以愉快的爬爬爬,甚至都不需要设置延迟,也不会担心封ip…

在爬取的过程中遇到了一些小问题,解决他们的过程中,确实是帮助我理解了一些很基础的东西,了解了他们的作用。现在记录并分享一下。

1.返回400状态码:

什么是400状态码呢?:400 bad request 错误的请求

解决方法:修改爬虫中request’参数

2.scrapy 爬虫时报错:

这是因为没有加header

解决方法:增加浏览器头部

3.迭代爬取时,报错 Filtered offsite request

因为 Request中请求的 URL 和 allowed_domains 中定义的域名冲突,所以将Request中请求的URL过滤掉了,无法请求。

解决方法:正确修改allowed_domains为域名(不加www.或者http),或者在request中添加参数dont_filter = True

4.urlparse模块

python2中的urlpython模块在python3中已经改名为urllib.parse,所以import的时候要注意咯。

你可能感兴趣的:(scrapy爬虫实践之抓取拉钩网招聘信息(4))