实现自己的scrapyd服务

2024-06-10 14:41:11 发布

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

我想为scrapydapi创建我自己的服务,它应该返回一些关于运行crawler的更多信息。我在一开始就被卡住了:我应该把包含该服务的模块放在哪里。如果我们看违约”scrapyd.conf“它有一个部分叫做服务:

[services]
schedule.json     = scrapyd.webservice.Schedule
cancel.json       = scrapyd.webservice.Cancel
addversion.json   = scrapyd.webservice.AddVersion
listprojects.json = scrapyd.webservice.ListProjects
listversions.json = scrapyd.webservice.ListVersions
listspiders.json  = scrapyd.webservice.ListSpiders
delproject.json   = scrapyd.webservice.DeleteProject
delversion.json   = scrapyd.webservice.DeleteVersion
listjobs.json     = scrapyd.webservice.ListJobs

所以这是scrapyd包中每个服务的绝对路径,它放在dist packages文件夹中。有没有办法放置我自己的模块,其中包含不在dist packages文件夹中的服务?在

升级版。 意识到这个问题可能不清楚。Scrapy是一个分析网站数据的框架。我有一个简单的django站点,从那里我可以启动/停止特定区域的爬虫程序等等(http://54.186.79.236是俄语)。使用爬虫程序进行操作是通过scrapydapi进行的。默认情况下,它有一个小的API,只用于启动/停止/列表爬虫程序及其日志等 以上是对这个问题的介绍。我想扩展现有的API,从运行爬虫检索更多的信息,并在我的网站呈现上面提到的。为此我需要继承现有的scrapyd.webservice.WsResource写一份服务。如果我把服务模块放在搜索路径'路径。但我想将这个包含模块的服务保存在scrapy项目文件夹中(出于某种审美原因)。所以,如果我把它放在那里,它会(可以预见地)在scrapyd发布上“没有命名为”的模块。在


Tags: 模块路径程序文件夹apiweb信息json