2017-01-03 7 views
0

私はGiphypopを使用して、gifのURLを取得しています。私は便宜上、このURLを変数に保存しましたが、今では何とかgifをファイルに保存する必要があります。しかし、私はエラーが発生しています。URLからGIFを保存するにはどうすればよいですか?

これは再開できると思います。私の問題は、Windowsが保存後にgifファイルを開かないことです。ここにコードと問題のスクリーンショットがあります。申し訳ありませんが、前に投稿できませんでした。

コード:

import giphypop 
from urllib import request 

g = giphypop.Giphy() 

request.urlretrieve("http://giphy.com/gifs/fullerhouse-3oz8xJfB6XGBwOA8HS", "test.gif") 

スクリーンショット:

enter image description here

+0

Windows 10はなぜそれを開くことができなかったのですか?ダウンロードしたファイルが本当にGIFであるかどうかを確認しましたか?他の方法でダウンロードした場合、Windows 10でファイルを開くことはできますか? (あなたのコードはどこにありますか?) – usr2564301

+0

@RadLexus今、Windowsは "ファイルを開くことができませんでした"と言っています。役に立つ情報はありません。私はそれが普通の方法でダウンロードすればWindowsが正常に開くことができると確信しています。私はスクリプトを使ってこれをすべて実行する方法を学んでいます。 – whatwhatwhat

+1

詳細を記入してください。これは広すぎます – frlan

答えて

1

あなたはURLを持っていたら、それは単一のラインと同じくらい簡単です(と輸入、公平であるために) :

import urllib 
urllib.urlretrieve('http://example.com/somefile.gif', '/path/to/save/myfile.gif') 
+0

これはまさに私が昨夜試したものですが、Windowsはそれを開くことができないと言っただけです。私が数時間後に家に帰ると、私は二重チェックをします。これはGIFでうまくいくのですか?私はこれを画像に使用した例を見ました。 – whatwhatwhat

+1

@whatwhatwhatこれは最も確実に機能します。あなたがそれに特有の問題を抱えている場合は、あなたが得ているエラーなどの詳細を共有する必要があります – Mureinik

+0

**コード:** 'urllib.urlretrieve(http://giphy.com/gifs/ 3oz8xJfB6XGBwOA8HS-fullerhouse」、 'test.gifという') ' は**エラー:** 'トレースバック(最新の呼び出しの最後):モジュール: はAttributeError に ファイル ""、1行目、 'urllibはは' ノーを持っています属性 'urlretrieve'' – whatwhatwhat

0

はこれを試してみてください:

import urllib 
foo = urllib.urlretrieve('htttp://www.somelink.com/file.gif','localfilename.gif') 
+0

ムレニクによる拍手 – Gapiro

0

あなたはurllibはのファンでない場合は、要求モジュールを使用して試すことができます:

import requests 

url = "http://www.url.of/the-file/here.gif" 
response = requests.get(url) 
data = response.text 
open("./image.gif", "w").write(data) 

それとも、また、上記のコードの短い代替を使用して試すことができます。

import requests 

download = lambda url, filename="": open(filename if filename else (url.split("/")[-1] or "file.html"), "w").write(requests.get(url).text) 
download("http://www.url.of/the-file/here.gif", "image.gif") 
関連する問題