为什么pyspider+mongodb只存了一部分数据到数据库,而其他大量数据并没有写入数据库!


什么也不说,先上图!


在pyspider,抓到的数据是这样的微笑




而查看数据库却是这样!微笑



去查看爬虫代码,debug一下,结果才发现原来是因为_id 的数据在网页没有显示出来,导致数据全部重复!

我只能说**网站这坑货!!哥,冒险不用代理爬的11万数据,你居然给我来这限制!再见还好发现得早,不然等被你禁了ip才发现,那我去不是亏大发了微笑


唉,总结一下,抚慰我受伤的心,希望不会有人犯和我一样的错误!


知识点:

mongodb数据库默认是通过  _id  来说写入的每个数据进行建立索引的,也就是说,通过


>db.person.update({'_id':id}, data, True)

或者

>db.person.insert(data)


这两种方式的话,只要_id是相同的,那么就不会写入数据库!!这就是哥我犯错的地方!


所以啊,在写入数据库的时候一定要找好唯一 的值赋给 _id,不行的话,_id  就不要赋值,数据库会默认加上的。


Game Over!



有时间再把自己摸索了一段时间的pyspider和mongodb以及rabbitmq的结果做个记录。。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值