我是Scrapy的新手,我想编写s3的HTML的备份。我发现通过使用以下代码,我可以编写特定的抓取HTML:
settings.py
ITEM_PIPELINE = {
'scrapy.pipelines.files.S3FilesStore': 1
}
AWS_ACCESS_KEY_ID = os.environ['S3_MAIN_KEY']
AWS_SECRET_ACCESS_KEY= os.environ['S3_MAIN_SECRET']
FEED_FORMAT = "json"
FEED_URI=f's3://bucket_name/%(name)s/%(today)s.html'
然后在我的抓取文件中:
def parse(self, response):
yield {'body': str(response.body, 'utf-8')}
但是,我想写一个包含url作为子文件夹的键,例如:
FEED_URI=f's3://bucket_name/%(name)s/%(url)s/%(today)s.html'
如何动态获取FEED_URI的网址。我假设在
def start_requests(self):
urls = [
'http://www.example.com',
'http://www.example_1.com',
'http://www.example_2.com',
]
我有多个网址。另外,是否仍要编写未嵌套在JSON中的原始HTML文件?谢谢。