我使用scrapy 0.20和puthon 2.7
我曾经在cmd
中这样做 -s JOBDIR=crawls/somespider-1
处理相关项目。 请注意,我已经在设置中进行了更改
我不想在cmd中使用它。
无论如何都可以在我的蜘蛛里面输入代码吗?
感谢
答案 0 :(得分:1)
这很容易。在pipelines.py中使用dropitem删除该项。并且您可以使用自定义命令来编写程序内部的参数。
Here is example of custom code in scrapy
使用自定义命令(例如:scrapy crawl mycommand
)
您可以运行-s JOBDIR=crawls/somespider-1
示例:
创建一个目录commands
,其中包含scrapy.cfg
个文件
在目录中创建文件mycommand.py
from scrapy.command import ScrapyCommand
from scrapy.cmdline import execute
class Command(ScrapyCommand):
requires_project = True
def short_desc(self):
return "This is your custom command"
def run(self, args, opts):
args.append('scrapy')
args.append('crawl')
args.append('spider')##add what ever your syntax needs.In my case i want to get "scrapy crawl spider" in cmd
execute(args)#send a list as parameter with command as a single element of it
现在转到cmd行并键入scrapy mycommand
。然后你的魔法就准备好了: - )