用Python分发web爬虫

2024-06-07 05:38:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我是一名Python学习者,我一直在深入研究这篇文章:

"A Web Crawler With asyncio Coroutines" by A. Jesse Jiryu Davis and Guido van Rossum

有一件事我不明白,我将如何在多台计算机的集群上发展这个程序。这是asyncio库的一部分,还是您“自己”负责分发的部分?你知道吗


Tags: andwebasynciobywith学习者vancoroutines
1条回答
网友
1楼 · 发布于 2024-06-07 05:38:22

一种可能是使用外部任务队列。有很多选择,Celery是一个流行的。基本思想是将作业推送到队列中,在队列中,任意数量的工作进程都可以使用它们。对于一个网络爬虫来说,一个作业可以像一个要抓取的URL一样简单。工作人员将从队列中获取一个URL,检索它,解析它,并将任何新URL作为新作业添加到队列中。你知道吗

这个系统的优点是工人只是进程,可以通过网络与队列通信,因此您可以在任意多的机器上拥有任意多的工人。你知道吗

相关问题 更多 >