scrapy没有正确下载文件。我有我的项目的URL,所以我想我可以使用wget下载文件。
如何在scrapy process_item
函数中使用wget?或者,是否有另一种下载文件的方式?
class MyImagesPipeline(ImagesPipeline):
#Name download version
def image_key(self, url):
image_guid = url.split('/')[-1]
return 'full/%s' % (image_guid)
def get_media_requests(self, item, info):
if item['image_urls']:
for image_url in item['image_urls']:
# wget -nH image_ul -P images/
yield Request(image_url)
答案 0 :(得分:4)
此代码将执行wget,您可以使用以下行替换您的注释
import subprocess
...
subprocess.call(['wget','-nH', image_url, '-P images/'])
您可以在此处阅读subprocess.call:http://docs.python.org/2/library/subprocess.html