質問
webページをダウンロードするコードについて。
オライリージャパンからでている書籍を購入し例文のまま打ち込んでいたのですがうまくいきませんでした。
原因を調べてみたらプロキシが邪魔しているようなので、プロキシの設定をしたらとりあえずエラーは起きなかったのですが指定したWebのダウンロードはできていませんでした。
冒頭250文字を表示させてみると、文字が返ってくるので何かをダウンロードしてきたみたいなのですが、内容を見てもよくわかりませんでした。
なぜこんなことが起きたのか原因をお分かりの方いらっしゃいましたらご回答お願いいたします。
追記---
また、どういう経緯でこの文字列をダウンロードしてきたのか、教えていただけると大変助かります。
windows10
Python 3.7.3
python
1>>>import os 2>>>import requests 3 4>>>os.environ['http_proxy'] = 'http://userID12345:8888' 5>>>res = requests.get('http://automatetheboringstuff.com/files/rj.txt') 6>>>type(res) 7<class 'requests.models.Response'> 8>>> res.status_code ==requests.codes.ok 9False 10>>> len(res.text) 111277 12>>> print(res.text[:250]) 13<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 14<html xmlns="http://www.w3.org/1999/xhtml"> 15<head> 16<meta http-equiv="Content-Type" content="text/html; charset=shift_jis"/> 17<title>404 -
普通、プロキシの設定は、
http://user:pass@server:port 形式で@が入るのかなと思うのですが、設定は正しいですか?
>>> res.status_code ==requests.codes.ok
False
であることや、
404 というのも出ているので、Not Foundのエラーが出ていると思います。
>>> res.status_code
は、 404 になっているかと思います。
そうなんですねー!!
ではおそらくプロキシの設定原因かと思われます。プロキシの設定方法を再度調べてみてもう一度同じことをしてみようと思います。
BAにさせていただきたいと思いますので、ご回答して頂けると助かります。
アンサーとするかどうかは解決してからで構わないです。
別の回答もついていますし。
回答がついているほうの404エラーについては、接続しているプロキシサーバが正しければ、URLが貼り付けられたそのものだとしたら、print(res.text[:250]) で提示されたようなものにはならないと思うので、ちょっと違いそうな気がしています。
なるほど!!!
調べてみたらどうやら設定が間違えていたようです。おっしゃる通り形式がおかしいことがわかりました。プロキシ設定がうまくいくようpythonと戦ってみます。
また何かありましたら、ご教授頂けると助かります。ありがとうございます!!!
すみません、自動構成スプリクトの場合も
http://user:pass@server:port
という形式になるのでしょうか??
見当違いな質問でしたら申し訳ありません。ご回答いただけると大変助かります。
https://qiita.com/koharite/items/731fcf5146c7b0c4e800
こちらの記事が参考になりそうです。
自動構成スクリプト=.pacファイルが提示されているということですよね?
こちらも参考に
https://2.python-requests.org/en/master/user/advanced/#id10
できましたーーー!!!
二つ目のサイトを参考にできました!!
いろいろ調べましたがご提示して頂いたサイトをみつけられなかったので助かりました!!!
ありがとうございます!!!!
BAにしたいのでご回答お願いいたします!!
お、解決してよかったです。
それっぽくまとめて記載したのでご確認ください。
回答2件
あなたの回答
tips
プレビュー