Basic認証をかけて制作しているWEBサイトをクロールする場面があった。
クローラーの準備はできているものとして、basic認証を通したい。

urllib3を使っている前提。
ここにheader情報を追加していく。

通常は、
http = urllib3.PoolManager() response = http.request('GET', url)
としていたところを、

下記のようにしてheaderに認証情報を追加する。
http = urllib3.PoolManager() headers = urllib3.util.make_headers(basic_auth='user:pass') response = http.request('GET', url, headers=headers)

これで通った。

Posted at

[data-hatena-bookmark-layout="standard-noballoon" data-hatena-bookmark-lang="ja" title="このエントリーをはてなブックマークに追加"] img [src="https://b.st-hatena.com/images/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="20" height="20" style="border: none;"]