サブタイトルに絶対的ではなく相対的な方法で何かをダウンロードするにはurlretrieve()
を使用できますか?たとえば :サブフォルダにurlretrieve()でファイルをダウンロード
urllib.request.urlretrieve(url, '/downloads/2017/foo.txt')
私は、ファイル名のpythonのパスを追加する毎回次のエラーがスローされます。
File "C:\Program Files\Python36\lib\urllib\request.py", line 258, in urlretrieve tfp = open(filename, 'wb') FileNotFoundError: [Errno 2] No such file or directory: '/downloads/2017/foo.txt'
しかし、私はこのコードを使用する場合:
urllib.request.urlretrieve(url, 'foo.txt')
それは喜んでファイルをダウンロード。
ここでは何か基本的なものが欠けていると思いますが、かなり時間がたつにつれインターウェブを検索した後、まだ答えは見つかりませんでした。誰もが相対ファイルパスがurlretrieve()
メソッドでどのように表現されるべきか知っていますか?
先頭のスラッシュを削除します。「downloads/2017/foo.txt」を使用してください。先頭のスラッシュは、あなたのコンピュータにファイルシステムのルート(つまり 'C:\\')に行くように指示しています。現在のディレクトリに相対的なパスを持つには、スラッシュで始まらない。 –
@HaydenSchiffまだ同じエラーです。私もダブルバックスラッシュを使用してみましたが、私は同じエラーが発生します。 – stendarr
このスクリプトを実行しているディレクトリに "downloads"と "2017"というフォルダが既に存在していますか? –