RT,我这边有需求处理一批 URL 入口,其中可能会定制传入相应的参数,形式大概类似于:
execute(['scrapy', 'crawl', 'woshiscrapy', '-a', 'para=%s' % para)       
试过多进程和多线程,完全不适配,似乎异步 twisted 好像需要其他法子解决速度问题。
本来放弃速度,准备直接 for 循环传入,结果发现调用 execute 执行 scrapy,爬完了第一个 url,就直接退出了主程序。
很无奈,求各位大佬给点具体的方案建议,小弟有点没招了。
|  |      1Leigg      2018-05-03 20:41:58 +08:00 via Android 参数得有规律才行,用多进程可以的。 | 
|      2arithboy      2018-05-03 22:42:35 +08:00  1 你把 url 和相应的参数拼成一个 url 列表,然后赋值到 self.start_urls 变量里面跑 要多进程的话,把 url 放到队列里面,然后启动多个 scrapy 从队列中取 | 
|  |      3lins05      2018-05-03 23:28:25 +08:00 可以用 scrapyrt, 把 scrapy project 变成一个 http service, 然后调用 http api | 
|      4Mitt      2018-05-04 02:04:50 +08:00 via iPhone 可以了解一下 scrapy_redis  然后重写 make_requests_from_data 来实现自定义参数传入 |