【发布时间】:2016-04-22 23:57:20
【问题描述】:
我正在尝试制作一个下载电影文件字幕的小程序。
但是我注意到,当我点击 chrome 中的链接并使用 urllib2.urlopen() 打开它时,结果并不相同。
作为示例,让我们考虑链接 http://www.opensubtitles.org/en/subtitleserve/sub/5523343 。在 chrome 中,这会重定向到 http://osdownloader.org/en/osdownloader.subtitles-for.you/subtitles/5523343,稍后会下载我想要的文件。
但是,当我在 python 中使用以下代码时,我被重定向到另一个页面:
import urllib2
url = "http://www.opensubtitles.org/en/subtitleserve/sub/5523343"
response = urllib2.urlopen(url)
if response.url == url:
print "No redirect"
else:
print url, " --> ", response.url
结果:http://www.opensubtitles.org/en/subtitleserve/sub/5523343 --> http://www.opensubtitles.org/en/subtitles/5523343/the-musketeers-commodities-en
为什么会这样?如何遵循与浏览器相同的重定向?
(我知道这些网站在python中提供API,但这是在python中的练习和第一次使用urllib2)
【问题讨论】:
标签: python html google-chrome urllib2