urllib2加载移动si时出现问题

2024-09-29 21:51:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从http://m.finnkino.fi/events/now_showing获取一些数据,但目前我失败得很厉害,因为我甚至不能用python加载页面源代码。 目前我正在使用以下代码:

req = urllib2.urlopen(URL,None,2.5)
page = req.read()
print page

以下是超时错误的回溯:

^{pr2}$

如果我用我的浏览器浏览到这个网址,它工作得很好。有人能告诉我是什么让这个网站变得如此不同,以至于urllib2无法加载页面吗。我想这与该网站面向移动用户有关。对于“常规”站点,urllib2可以很好地工作。有没有其他类型的网站基本的urlopen(URL)不起作用?在

谢谢你的帮助


Tags: 数据httpurl源代码网站page页面urllib2
1条回答
网友
1楼 · 发布于 2024-09-29 21:51:13

下面的代码片段很好。在

import httplib
headers = {"User-Agent": "Mozilla/5.0"}
conn = httplib.HTTPConnection("m.finnkino.fi")
conn.request("GET", "/events/now_showing", "", headers)
response = conn.getresponse()
print response.status, response.reason
data = response.read()
print data
conn.close()

他们的服务器似乎已经验证了几个请求变量。经过多次试验,得出结论:

  1. http协议必须是http/1.1。在
  2. 如果请求头有Connection prop,它的值应该是keep alive。在
  3. 请求头必须具有用户代理属性,无论其值如何。在

在urllib2中,HTTPHandler中的Connection prop默认设置为Close(urllib2.py中为L1127)。您可以使用urlgrabber或其他支持HTTP/1.1和keep-alive的HTTP处理程序。在

相关问题 更多 >

    热门问题