Python 在Scrapy中,如何检查导出的文件是否已经存在?

Python 在Scrapy中,如何检查导出的文件是否已经存在?,python,web-scraping,scrapy,Python,Web Scraping,Scrapy,我写了一些刮痒的蜘蛛。它将数据导出到我通过命令行传递的文件名:E:\Anaconda3\envs\Blog2Doc\Lib\site packages\scrapy\cmdline.py runspider Blog2Doc\u scrapy\spider\blog\u spider.py-o..\data\out.html。如果此文件已存在,则此爬行器只需将内容附加到已存在的文件。如何检查输出文件是否已经存在以及是否存在-删除它。为了导出到文件,我编写了Blog2DocExporter(bas

我写了一些刮痒的蜘蛛。它将数据导出到我通过命令行传递的文件名:
E:\Anaconda3\envs\Blog2Doc\Lib\site packages\scrapy\cmdline.py runspider Blog2Doc\u scrapy\spider\blog\u spider.py-o..\data\out.html
。如果此文件已存在,则此爬行器只需将内容附加到已存在的文件。如何检查输出文件是否已经存在以及是否存在-删除它。为了导出到文件,我编写了Blog2DocExporter(baseitemporter)类。它不是打开的输出文件,在构造函数中它得到的是已经打开的文件对象。因此,在这个exporter类中,我无法检查导出的文件是否已经存在。

覆盖输出文件是一个已知的未决问题。例如,见:

我自己提出了一个修复方案,用递增后缀重命名文件。但实现并不向后兼容。 尽管如此,您可能会发现这很有用:

它更改了
FileFeedStorage
,但您可以实现类似的功能,并查看如何使用此类自定义feed存储类