過去の日記

2016-02-12 [長年日記]

http通信のデバッグ [Python]

Pythonのurllib2.HTTPHandlerにあるdebuglevelはどうやって使うんだろうなぁ? と思った話。

こうみたい。

import urllib2

handler=urllib2.HTTPHandler(debuglevel=1)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)

data = urllib2.urlopen('http://www.yahoo.co.jp').read()
print '===='
print data
send: 'GET / HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: www.yahoo.co.jp\r\nConnection: close\r\nUser-Agent: Python-urllib/2.7\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server: nginx
header: Date: Fri, 12 Feb 2016 04:35:04 GMT
header: Content-Type: text/html; charset=UTF-8
header: Transfer-Encoding: chunked
header: Connection: close
header: P3P: policyref="http://privacy.yahoo.co.jp/w3c/p3p_jp.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"
header: X-Content-Type-Options: nosniff
header: X-XSS-Protection: 1; mode=block
header: X-Frame-Options: SAMEORIGIN
header: Cache-Control: private, no-cache, no-store, must-revalidate
header: Expires: -1
header: Pragma: no-cache
header: X-XRDS-Location: https://open.login.yahooapis.jp/openid20/www.yahoo.co.jp/xrds
header: Vary: Accept-Encoding
header: X-Frame-Options: SAMEORIGIN
====
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-style-type" content="text/css">
<meta http-equiv="content-script-type" content="text/javascript">
<meta name="description" content="日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。">
:
: