Python 使用子流程运行scrapy
我需要运行几个python脚本,其中一些是零碎的项目 要运行蜘蛛,我尝试以下方法:Python 使用子流程运行scrapy,python,scrapy,subprocess,Python,Scrapy,Subprocess,我需要运行几个python脚本,其中一些是零碎的项目 要运行蜘蛛,我尝试以下方法: from subprocess import call import subprocess call(["scrapy",'crawl','my_spider','-o output_file.csv'],cwd='/home/luis/Schreibtisch/kukun/bbb_new_pro/scripts/2_Get_links) 我想知道是否可以指定输出的文件目录,我尝试了以下方法: call(["
from subprocess import call
import subprocess
call(["scrapy",'crawl','my_spider','-o output_file.csv'],cwd='/home/luis/Schreibtisch/kukun/bbb_new_pro/scripts/2_Get_links)
我想知道是否可以指定输出的文件目录,我尝试了以下方法:
call(["scrapy",'crawl','my_spider','-o folder_1/folder_2/output_file.csv'],cwd='project_folder')
但这只会在项目目录下创建一个新文件夹,我希望该文件位于tht文件夹之外
另一件事是,我可以在变量中指定输出文件的名称吗?比如:
file_name = 'output file.csv'
call(["scrapy",'crawl','my_spider','-o + file_name '],cwd='project_folder')
这对我很有用:
from subprocess import call
name = "spider_name"
call(["scrapy", "crawl", "{0}".format(name), "-o {0}.json".format(name)])
这对我很有用:
from subprocess import call
name = "spider_name"
call(["scrapy", "crawl", "{0}".format(name), "-o {0}.json".format(name)])
将
/
添加到输出的开头folder@eLRuLL正如@eLRull所建议的,调用([“刮擦”,“爬行”,“我的蜘蛛”,“o/absolute/path/to/folder\u 1/folder\u 2/output\u file.csv],cwd='project\u folder')
应该可以工作。对于另一种情况,可能调用([“刮屑”、“爬网”、“我的蜘蛛”、-o%s“%file\u name”、cwd='project\u folder')
就是您想要的。请注意,从这样的脚本运行spider不是推荐的方法;阅读此操作的说明将/
添加到输出的开头folder@eLRuLL正如@eLRull所建议的,调用([“刮擦”,“爬行”,“我的蜘蛛”,“o/absolute/path/to/folder\u 1/folder\u 2/output\u file.csv],cwd='project\u folder')
应该可以工作。对于另一种情况,可能调用([“刮屑”、“爬网”、“我的蜘蛛”、-o%s“%file\u name”、cwd='project\u folder')
就是您想要的。请注意,从这样的脚本运行spider不是推荐的方法;请阅读下面的文章