python - 在 scrapy 中运行多个蜘蛛

标签 python scrapy web-crawler

  1. 例如,在 scrapy 中,如果我有两个包含不同 HTML 的 URL。现在我想为一个写两个单独的蜘蛛,并想同时运行两个蜘蛛。在 scrapy 中是否可以一次运行多个蜘蛛。

  2. 在 scrapy 中编写了多个爬虫后,我们如何安排它们每 6 小时运行一次(可能类似于 cron 作业)

我不知道上面的内容,你能用一个例子建议我如何执行上面的事情吗?

提前致谢。

最佳答案

从操作系统级别同时运行两个 scrapy 脚本可能是最简单的。他们都应该能够保存到同一个数据库。创建一个 shell 脚本来同时调用两个 scrapy 脚本来执行它们:

scrapy runspider foo &
scrapy runspider bar

确保使用 chmod +x script_name 使此脚本可执行

要每 6 小时安排一次 cronjob,请在您的终端中键入 crontab -e,然后按如下方式编辑文件:

* */6 * * * path/to/shell/script_name >> path/to/file.log

第一个 * 是分钟,然后是小时等,星号是通配符。因此,这表示在小时数可被 6 整除的任何时间或每六个小时运行一次脚本。

关于python - 在 scrapy 中运行多个蜘蛛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10943745/

相关文章:

python - 在运行时向函数对象添加方法

python - 如何在 scrapy 中跟踪请求

python - Scrapy:无法从我的项目数据(价格)中删除 unicode

python - scrapy 无法从网站中提取一些数据

mysql - 网络爬虫可以自动将找到的 URL 添加到 MySQL 数据库吗?

python - 在 python-docx 中更改段落格式

python - Docker 远程上的 Pycharm 远程解释器 : [Errno 2] No such file or directory

linux - 如何使用密码保护Scrapyd UI?

security - secret URL 可以被搜索引擎索引吗?

python - PYSPARK - 如何读取 S3 中所有子文件夹中的所有 csv 文件?