2 つの Web サイトから複数の画像ファイルをダウンロードしようとしていますが、必要な時間を短縮することを期待して、マルチプロセッシング モジュールを使用しています (同期的には約 5 分です)。これは、別のプロセスで実行されるコードです。
def _get_image(self):
if not os.path.isdir(self.file_path + self.folder):
os.makedirs(self.file_path + self.folder)
rand = Random()
rand_num = rand.randint(0, sys.maxint)
self.url += str(rand_num)
opener = urllib.FancyURLopener()
opener.retrieve(self.url, self.file_path + self.folder + '/' + str(rand_num) + '.jpg')
上記のコードは個別のプロセスで実行され、正常に動作しますが、各ファイルをダウンロード直後に保存するのではなく、プロセス実行の最後に保存したいと思います。ダウンロード後、ファイルを内部リストまたは dict に保存したいのですが...残念ながら、FancyURLopener はファイルをメモリに保存することを許可しておらず、ダウンロード後すぐにディスクに書き込むことを要求します。FancyURLopener のようなツールがありますが、ディスクへの書き込みはありませんか?