以下のスクリプトを打ち込んで、実行してみたのですが、ファイルがダウンロードされません。どなたか理由を教えてください。
lang
1import urllib2 2data = urllib2.urlopen("http://www.example.com/filename.xlsx") 3with open('filename.xlsx','wb') as f: 4 f.write(data.read())
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答3件
0
プログラムコードと、実行してみた様子を以下に示します。
コード中の url の値を適宜変更して利用できるはずです。
$ cat xml.py import urllib2 url = "http://www.radionikkei.jp/podcasting/roundup.xml" data = urllib2.urlopen(url) with open('sample.xml','wb') as f: f.write(data.read()) $ ls xml.py $ python xml.py $ ls sample.xml xml.py $ head sample.xml <?xml version="1.0" encoding="UTF-8" ?> <rss xmlns:itunes="http://www.itunes.com/DTDs/Podcast-1.0.dtd" version="2.0"> <channel> <title>伊藤洋一のRound Up World Now!</title> <link>http://www.radionikkei.jp/roundup/</link> <description>伊藤洋一氏が日本だけでなく世界中で起きた1週間の経済・社会・政治関連の出来事、指標、トピックスなどを分かりやすく解説。刻々と変化していく現代をグローバルに見渡すことのできる30分です。</description> <language>ja</language> <docs>http://blogs.law.harvard.edu/tech/rss</docs> <itunes:author>ラジオNIKKEI</itunes:author> <itunes:image href="http://www.radionikkei.jp/archives/program/roundup/podcast.jpg"/>
投稿2015/06/06 07:44
編集2015/06/06 08:32総合スコア22328
0
ベストアンサー
私の環境では以下のコードでファイル保存出来ましたので、
同じコードを実行していただいてもよろしいでしょうか?
(Excelファイルは適当に探してきました。)
lang
1$ python --version 2Python 2.7.10
lang
1import urllib2 2data = urllib2.urlopen("http://www.excel.studio-kazu.jp/DL/files/nen20110104.xls") 3with open("nen20110104.xls", "wb") as f: 4 f.write(data.read())
-- 追記
ダウンロード先を指定する方法です。
変更点は with open()
の引数です。
お使いの環境に合わせて変更していただければ、と思います。
lang
1import urllib2 2data = urllib2.urlopen("http://www.excel.studio-kazu.jp/DL/files/nen20110104.xls") 3with open("/Users/ryunix/Downloads/nen20110104.xls", "wb") as f: 4 f.write(data.read())
投稿2015/06/06 05:35
編集2015/06/06 09:04総合スコア1656
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
iPythonを用いて一つずコードを打つと、最後の行で name 'read' is not defined と表示されました。これはどういうことでしょうか。
data = urllib2,urlopen(ry の後に help(data.read) を実行すると以下が表示されます。
read(self, size=-1) method of socket._fileobject instance
多分、これが表示されない状態なんでしょうか?
help(data.read)を実行したところ、read(self, size=-1) method of socket._fileobject instanceが表示されました。
と言うことは read は not defined じゃない気もしますねぇ...
これはちょっと分からないなぁ... orz
そうですか...
ありがとうございました。もう少し模索してみます。
解決してないのにBA貰ってしまったので、もう少しだけ...
今のPythonのバージョンが知りたいのと、
iPython ではなく Python で実行した時にどうなるか知りたいです!
コメントありがとうございます。
そして、解決しました!! 勘違いしていて、てっきりdownloadのパスの下にダウンロードされるのかと思っていました。そしたら、まさかのpythonを保存したところに直接ダウンロードされるんですね。知りませんでした。また、もしよろしければ、ダウンロード先のパスを指定する方法がありましたら、教えてください!
なるほど、保存される場所を勘違いされていたのですね!
ダウンロード先を指定する方法を追記いたしましたので、ご確認ください。
追記ありがとうございます。また機会がありましたらお助けください!
こちらこそ、またよろしくお願いします~ :D

0
ファイルを閉じていないからでしょうか?
lang
1f.close()
投稿2015/06/06 05:07
総合スコア1656
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
追加しましたがダメでした。
with を使うと自動的に close されるみたいでした、すいません。

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/06/06 08:25