python request 库POST请求从ajax爬取数据遇到formdata不会处理了

目标爬取网站为http://www.ccgp-shaanxi.gov.cn/notice/list.do?noticetype=3&province=province

form data为:
form data

以下为我的代码:

import requests
from urllib.parse import urlencode

base_url = 'http://www.ccgp-shaanxi.gov.cn/notice/noticeaframe.do?noticetype='
noticetype = '3'
url = base_url + noticetype
headers = {
    'Host': 'www.ccgp-shaanxi.gov.cn',
    'Referer': 'http://www.ccgp-shaanxi.gov.cn/notice/list.do?noticetype=3&province=province',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
    'X-Requested-With': 'XMLHttpRequest'}

data = {
    'parameters[purcatalogguid]': '',
    'page.pageNum': '',
    'parameters[title]': '税',
    'parameters[startdate]': '',
    'parameters[enddate]': '',
    'parameters[regionguid]': '6101',
    'parameters[projectcode]': '',
    'province': '',
    'parameters[purmethod]': ''
}

data = urlencode(data)
print(data)
request = requests.post(url, data=data, headers=headers)
# print(request.text)
print(request.headers)


但是获取到的信息反应、感觉formdata貌似没有起作用,因本人属于新手小白,各位大神能指点指点吗?

formdata 里面的数据是body里的,带上就好了,我做爬虫好几年了,有什么不懂的,欢迎追问!如果对你有帮助,请采纳!

你cookie也要设置上去。不然可能提交的数据不会接受

有木有大神帮着执行一下、、、分析一下

我觉得是你的data数据格式有问题,方括号内应该是个字符串
data = {
'parameters[\'purcatalogguid\']': '',
'page.pageNum': '',
'parameters[\'title\']': '税',
'parameters[\'startdate\']': '',
'parameters[\'enddate\']': '',
'parameters[\'regionguid\']': '6101',
'parameters[\'projectcode\']': '',
'province': '',
'parameters[\'purmethod\']': ''
}
遇到这种问题你应该先尝试发送原始请求中body 的raw data的也就是原始数据, 尝试直接修改字符串,而不是用抓包工具提供的解析后的body重新编码, 成功概率会高一点。 这样就可以排除cookie或是其他的认证性错误

 base_url = 'http://www.ccgp-shaanxi.gov.cn/notice/noticeaframe.do?noticetype='
noticetype = '3'
url = base_url + noticetype
headers = {
    'Host': 'www.ccgp-shaanxi.gov.cn',
    'Referer': 'http://www.ccgp-shaanxi.gov.cn/notice/list.do?noticetype=3&province=province',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
    'X-Requested-With': 'XMLHttpRequest'}

data = {
    "parameters['purcatalogguid']": '',
    "page.pageNum": '',
    "parameters['title']": '税',
    "parameters['startdate']": '',
    "parameters['enddate']": '',
    "parameters['regionguid']": '6101',
    "parameters['projectcode']": '',
    "province": '',
    "parameters['purmethod']": ''
}


print(data)
request = requests.post(url, data=data, headers=headers)
print(request.text)
print(request.headers)