自定义用户代理与urllib2,python 2.7

时间:2014-08-27 12:10:59

标签: python-2.7 urllib2 user-agent

我有以下代码将自定义用户代理添加到我的urllib2

  self.url_target = (self.EntryText.get()) #it gets the url from a tkinter entry widget
  self.request = urllib2.Request(self.url_target)
  self.request.addheaders = [('User-agent', 'Mozilla/5.0')]
  self.req = urllib2.urlopen(self.request)

现在是一个愚蠢的问题。我想检查用户代理是否正确通过。我该怎么做呢?通过调用self.req.read()或self.req.info(),我无法看到浏览器用户代理。 例如,下面是我从google.com上看到的内容。如何检查传递的用户代理是python2.7还是我的自定义用户代理

日期:2014年8月27日星期三,格林威治标准时间11:50:41 到期:-1 Cache-Control:private,max-age = 0 内容类型:text / html;字符集= ISO-8859-1 Set-Cookie:PREF = ID = 59cfdae71ba9d583:FF = 0:TM = 1409140241:LM = 1409140241:S = 22PjpHkFs493PNKQ; expires =星期五,2016年8月26日11:50:41 GMT;路径= /;域= .google.it Set-Cookie:NID = 67 = gOPu9-bAzk01ceW2ukTfpixWIIEl2TRUHKwfDAh5AU6ee-GTXoxBMAHbK6keLCXA5oG_R-9KhPVQ6wMScI28qf-dxqBPOLi66maz_QbBkXtkTpsUcVu-Yohg5-T8w8xz; expires =星期四,26-Feb-2015 11:50:41 GMT;路径= /;域= .google.it;仅Http P3P:CP ="这不是P3P政策!有关详细信息,请参阅http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657。" 服务器:gws X-XSS-Protection:1;模式=块 X-Frame-Options:SAMEORIGIN 替代协议:80:quic 连接:关闭

谢谢

1 个答案:

答案 0 :(得分:0)

调用此网址 - http://httpbin.org/headers

源代码将包含您的用户代理。 : - )

您可以根据需要将其嵌入代码中。 但是现在我想在下面的代码中显示的是,这个网址会让你知道你的用户代理,

stuff=urllib2.urlopen("http://httpbin.org/headers").read()

print stuff
{
  "headers": {
    "Accept-Encoding": "identity",
    "Connection": "close",
    "Host": "httpbin.org",
    "User-Agent": "Python-urllib/2.7",
    "X-Request-Id": "43jhc13b-3dj4-4eb5-8780-ad7cfs4790cd"
  }
}

希望能回答你的问题