pythons urllib,urllib2和请求libary的差异

时间:2016-02-11 15:30:00

标签: python json ajax python-requests

我有2个脚本提交带有Ajax参数的post请求。

一个脚本使用请求libary(有效的脚本)。 另一个使用urllib&的urllib2。

目前我不知道为什么urllib脚本不起作用。

有人可以帮忙吗?

使用请求的脚本:

import requests
s = requests.Session()
url = "https://www.shirtinator.de/?cT=search/motives&sq=junggesellenabschied"
data1 = {
        'xajax': 'searchBrowse',
        'xajaxr': '1455134430801',
        'xajaxargs[]': ['1', 'true', 'true', 'motives', '100'],
        }
r = s.post(url, data=data1, headers={'X-Requested-With': 'XMLHttpRequest'}, verify=False)
#r = requests.post(url, data=data1, headers={'X-Requested-With': 'XMLHttpRequest'}, verify=False)
#r = requests.post(url, verify=False)
result = r.text
print result
print result.count("motiveImageBox")

使用urllib的脚本:

import urllib2
import urllib
#
url = "https://www.shirtinator.de/?cT=search/motives&sq=junggesellenabschied"
data = ({
        'xajax': 'searchBrowse',
        'xajaxr': '1455134430801',
        'xajaxargs[]': ['1', 'true', 'true', 'motives', '100'],
        })
encode_data = urllib.urlencode(data)
print encode_data
req = urllib2.Request(url,encode_data)
response = urllib2.urlopen(req)
d = response.read()
print d
print d.count("motiveImageBox")

0 个答案:

没有答案