質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

1683閲覧

python3 webサイトの画像ダウンロード 失敗します

Untitled_Sample

総合スコア192

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2018/03/06 15:23

webサイトから、画像をダウンロードしたいのですが、
失敗します。

どうして、でしょうか?

エラー内容

AttributeError: module 'urllib' has no attribute 'urlretrieve'

コード

python

1#ライブラリの読み込み 2import urllib.error 3import urllib.request 4 5import requests 6import bs4 7 8import urllib 9# 対象のURL 10url='http://moeimg.net/11438.html' 11 12 13# URLの情報を取得 14r = requests.get(url) 15soup = bs4.BeautifulSoup(r.content) 16 17 18# ページに存在するimgタグを検索 19for link in soup.find_all('img'): 20 # 画像URLを取得 21 img_url = link.get('src') 22 23 #print (img_url) 24 25 try: 26 urllib.urlretrieve(img_url,img_url.split('/')[-1]) 27 except urllib.error.URLError as e: 28 print(e)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

投稿2018/03/06 15:28

LouiS0616

総合スコア35660

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Untitled_Sample

2018/03/06 15:38

import urllib.request.urlretrieve と追加してみましたが、パッケージが無いと言われます。 ImportError: No module named 'urllib.request.urlretrieve'; 'urllib.request' is not a package
LouiS0616

2018/03/06 15:48

import文を追加する必要はないです。 単にurllib.request.urlretrieveと呼び出せるはず。
Untitled_Sample

2018/03/06 15:49

urllib.urlretrieve ではなく、 urllib.request.urlretrieve でした。 失礼しました。
Untitled_Sample

2018/03/06 15:51

HTTP Error 403 相手サーバーがアクセス拒否の対応や 権限の付与とか有りますかね?
LouiS0616

2018/03/06 15:52

urllib周りにはPython2から3にかけて特に変更が多いので、書籍などのコードが動かないときはリファレンスを確認してみると良いです。
LouiS0616

2018/03/06 15:58

スクレイピングを禁止している可能性も充分ありますね。 回避する方法もあるようですが、あまり詳しくないので細かいコメントは差し控えます。(法的にグレーゾーンなことだったりしたらまずいので)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問