我有一个需要清理的网站,它使用jquery AJAX函数从服务器获取信息。我已经对代码进行了一段时间的调查,并使用以下命令成功地从服务器获取响应:
data = {'part_number':'1234'}
r = $.ajax({
type : 'GET',
url : 'ajaxurl',
data : data
})
注意,这是通过js控制台完成的,所以我已经登录了。当我尝试使用python进行此操作时,我当然需要首先登录:
import requests
headers = {'User-Agent': 'Mozilla/5.0','Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
payload = {'username':'me','password':'1234'}
link = 'login url'
session = requests.Session()
resp = session.get(link,headers=headers)
cookies = requests.utils.cookiejar_from_dict(requests.utils.dict_from_cookiejar(session.cookies))
resp = session.post(link,headers=headers,data=payload,cookies =cookies)
#until here sucesss!"############
url = "ajaxurl"
my_params={'part_number':'1234'}
r = session.get( url = url, data = my_params, cookies =cookies,headers =headers )
post登录请求进展顺利,但对于GET响应,我收到了错误的请求400。我不知道如何格式化我的请求。我不知道ajax对我的请求做了什么。有人有什么想法吗?
提前谢谢!
错误请求400表示服务器无法理解或处理您的请求(通过AJAX发送的数据)。
因为您在AJAX中使用的是
GET
方法,所以我将尝试使用查询字符串的传统url:解决了! 我在标题中添加了
'X-Requested-With': 'XMLHttpRequest'
,并执行了以下操作:但我不明白为什么:
相关问题 更多 >
编程相关推荐