私はPythonの初心者で、質問の答えを求めてこのサイトのQ&Aを見てきました。しかし、私は初心者なので、いくつかの解決策を理解するのが難しいと感じています。私は非常に基本的な解決策を必要としています。
どなたか、Windowsで、'httpでファイルをダウンロードして、'ディスクに保存する、という簡単な解決策を説明していただけないでしょうか?
shutilやosモジュールの使い方もよくわかりません。
ダウンロードしたいファイルは500MB以下で、.gz形式のアーカイブファイルです。どなたか、アーカイブを解凍して、その中のファイルを利用する方法を説明していただけると、とても助かります。
以下は、様々な回答を組み合わせて書いた部分的な解決策です。
import requests
import os
import shutil
global dump
def download_file():
global dump
url = "http://randomsite.com/file.gz"
file = requests.get(url, stream=True)
dump = file.raw
def save_file():
global dump
location = os.path.abspath("D:\folder\file.gz")
with open("file.gz", 'wb') as location:
shutil.copyfileobj(dump, location)
del dump
誰か間違いを指摘してくれたり(初心者レベル)、もっと簡単な方法を説明してくれませんか?
ありがとうございます。
ファイルをダウンロードするきれいな方法は
import urllib
testfile = urllib.URLopener()
testfile.retrieve("http://randomsite.com/file.gz", "file.gz")
これは、ウェブサイトからファイルをダウンロードして、file.gz
という名前を付けます。これは私のお気に入りのソリューションの一つで、https://stackoverflow.com/questions/3042757/downloading-a-picture-via-urllib-and-python からのものです。
この例では、urllib
ライブラリを使用しており、ソースから直接ファイルを取得します。