多线程的Python Web Crawler被卡住了
本文介绍了多线程的Python Web Crawler被卡住了的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在编写一个Python网络爬虫程序,我想让它成为多线程的。现在我已经完成了基本部分,下面是它的功能:
线程从队列获取URL;
该线程从页面提取链接,检查链接是否存在于池(集合)中,并将新链接放入队列和池;
该线程将URL和http响应写入CSV文件。
但当我运行爬虫程序时,它最终总是被卡住,没有正确退出。我已经翻阅了Python的官方文档,但仍然一无所知。
代码如下:
如有任何帮助,我们将不胜感激!
谢谢
马库斯
推荐答案
爬网函数有一个无限的While循环,没有可能的退出路径。
条件True
的计算结果始终为True
,循环继续,如您所说
修改爬网函数的While循环以包括条件。例如,当保存到CSV文件的链接数量超过某个最小数量时,则退出While循环。未正确退出
即
这篇关于多线程的Python Web Crawler被卡住了的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!