我对Scrapy的经验是有限的,每次我使用它,它总是通过终端的命令。如何从django模板中获取表单数据(一个要刮取的url),以便与scrapy进行通信以开始进行抓取?到目前为止,我只想到从django的视图中获取表单返回的数据,然后尝试访问蜘蛛网.py在scrapy的目录中添加表单数据的url到spider的起始url。从那以后,我真的不知道如何触发真正的爬行,因为我习惯了严格地通过我的终端执行类似“scrapy crawl dmoz”之类的命令。谢谢。在
小编:刚刚发现了。。。我想我可能正朝着正确的方向前进。在
Tags:
你已经用编辑来回答了。最好的选择是设置^{} service 并对^{} 进行API调用以触发要运行的抓取作业。在
要进行API http调用,可以使用} 的包装:
urllib2
/requests
,也可以使用scrapyd
API-^{如果我们把
scrapyd
放在一边,并尝试run the spider from the view,它将阻塞请求,直到扭曲的reactor停止-因此,这不是一个真正的选择。在但是,您可以开始使用^{} (与^{} )一起使用——定义一个任务,该任务将运行您的废蜘蛛并从django视图调用该任务。这样,您就可以将任务放入队列,而不会有用户等待爬网完成。在
另外,请看一下django-dynamic-scraper包:
相关问题 更多 >
编程相关推荐