首页 > 将爬虫数据插入SQL数据库是为什么出现重复?

将爬虫数据插入SQL数据库是为什么出现重复?

用Scrapy框架写了个抓取京东手机评论的爬虫,在将评论数据往SQL数据库中插时出现了多条数据重复的问题

求大神解答!!!


你先看看是不是抓取到的数据本身就是重复的。
其次、看看你代码逻辑是不是有错误。


因为数据库柄插入操作是次线程的,与主线程不同步,但是你传递给数据库柄的item 是引用传递,如果主线程中改变item的值了,那么次线程中的item也会改变,所以当数据库真正要插入第一条记录时,可能已经成了第三条记录了。前面两条记录就没有了。解决办法:将引用传递 修改成值传递,或者 生成多个item对象,每次yeild的item对象不是同一个。

【热门文章】
【热门文章】