您的位置:首页 > 数据库 > Mongodb

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

2015-08-12 00:19 603 查看
什么也不说,先上图!

在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的结果做个记录。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: