Python3でプロキシを通してアクセスしたいときの手順をメモメモ
import urllib.request
opener = urllib.request.build_opener()
proxy_handler = urllib.request.ProxyHandler({'http':'[ホスト名]:[ポート番号]'})
opener.add_handler(proxy_handler)
response = opener.open(url, data=None, timeout=8)
html = response.read()
ふむ
あと、ページを読み込むときにUTF8以外のページにも対応させるために
この関数を通すようにしてみたー
def conv_encoding(data):
lookup = ('utf_8', 'euc_jp', 'euc_jis_2004', 'euc_jisx0213',
'shift_jis', 'shift_jis_2004','shift_jisx0213',
'iso2022jp', 'iso2022_jp_1', 'iso2022_jp_2', 'iso2022_jp_3',
'iso2022_jp_ext','latin_1', 'ascii')
html = ''
1 2 3 4 5 6 7 8 9 |
for encoding in lookup: try: html = data.decode(encoding) break except: pass return html |
html = response.read()
のところを、こんな感じに変更
html = conv_encoding(response.read())
ふむふむ