在Python中执行get请求

时间:2012-10-08 18:34:49

标签: python parsing url get

请告诉我为什么这个类似的代码列表会得到不同的结果。 第一个(yandex.ru)获取请求页面,另一个获取网站主页(moyareklama.ru)

import urllib

base = "http://www.moyareklama.ru/single_ad_new.php?"
data = {"id":"201623465"}
url = base + urllib.urlencode(data)
print url
page = urllib.urlopen(url).read()
f = open ("1.html", "w")
f.write(page)
f.close()
print page

##base = "http://yandex.ru/yandsearch?"
##data = (("text","python"),("lr","192"))
##url = base + urllib.urlencode(data)
##print url
##page = urllib.urlopen(url).read()
##f = open ("1.html", "w")
##f.write(page)
##f.close()
##print page

1 个答案:

答案 0 :(得分:2)

最有可能的原因是你与urllib.urlopen和浏览器有所不同,因为你的浏览器可以使用javascript和meta / refresh标签以及标准HTTP 301/302响应进行重定向。我很确定urllib模块只会被HTTP 301/302响应重定向。

相关问题