python找房源_python抓取链家房源信息(二)

试着用scrapy将之前写的抓取链家网信息的重新写了写

然后先是用了第一页的网页作为测试,调试代码,然后发现总是抓取的时候遇见了

类似于这样的问题,并且抓取不到信息

2017-03-28 17:52:49 [scrapy.core.engine] DEBUG: Crawled (200)  (referer: None)

2017-03-28 17:52:49 [scrapy.downloadermiddlewares.robotstxt] DEBUG: Forbidden by robots.txt: 

2017-03-28 17:52:49 [scrapy.core.engine] INFO: Closing spider (finished)

之前一直以为是因为没有加user-agent和header信息导致的,但是加上之后还是会出现这种情况,所以百度了下

解决办法是 在 setting.py 中:

''# Obey robots.txt rules

ROBOTSTXT_OBEY = True  //设置为 False 即可

就能抓出来了,问题是因为 scrapy 默认检测 robots.txt ,看是否可以抓取,如果不行,就不能用了哦!

然后百度了robot.txt,说是在设置爬虫的时候,在请求url之前,spider会向服务器请求一个robot.txt的文件,然后该文件包含了本站点允许爬虫爬取的范围(比如服务器不与许爬取的页面,可以通过robot协议设置)因为scrapy是遵守robot协议的,所以会先请求这个文件查看自己的权限。所以在setting.py中将ROBOTSTXT_OBEY设置为False就可以解决了

然后在将数据插入到mongodb中时,没有插入数据,是忘记在setting.py中激活项目管道组件了。

ITEM_PIPELINES = {

'House.pipelines.HousePipeline': 300,

}

代码就不贴了,挺简单的,都是设置的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值