2017-03-02 8 views
0

私はいくつかのScrapyクモを書いています。コマンドラインで渡した名前のファイルにデータをエクスポートしました:E:\Anaconda3\envs\Blog2Doc\Lib\site-packages\scrapy\cmdline.py runspider blog2doc_scrapy\spiders\blog_spider.py -o ..\data\out.htmlこのファイルがすでに存在する場合、このスパイダーは存在するファイルにコンテンツを追加するだけです。出力ファイルが既に存在するかどうかをチェックし、存在する場合は削除する方法。ファイルにエクスポートするには、Blog2DocExporter(BaseItemExporter)クラスを作成します。出力ファイルは開かれていませんが、コンストラクタではすでに開いているファイルオブジェクトを取得します。だから、このエクスポータクラスでは、エクスポートされたファイルがすでに存在するかどうかをチェックすることはできません。Scrapyでエクスポートされたファイルが既に存在するかどうかをチェックする方法?

答えて

0

出力ファイルを上書きする処理は既知の未解決の問題です。例えば参照:

私は自分自身がサフィックスをインクリメントして、ファイル名を変更するための修正を提案しました。しかし、実装は下位互換性がありません。 あなたはそれにもかかわらず、これが役立つことがあります。https://github.com/scrapy/scrapy/pull/2093

をそれはFileFeedStorageを変更しますが、あなたは、このようなカスタムフィードストレージクラスを使用するthis other answerに似た何かを実装して見ることができます。

関連する問題