python在post请求下爬取数据,返回的值为什么为空?

本人小白,尝试爬杭州市二手房挂牌信息,
网址:http://jjhygl.hzfc.gov.cn/webty/gpfy/gpfySelectlist.jsp,
代码如下

import requests
url = 'http://jjhygl.hzfc.gov.cn/webty/WebFyAction_getGpxxSelectList.jspx'
data = {'page': 1}
headers = {'Host': 'jjhygl.hzfc.gov.cn',
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0',
            'Accept': 'text/html, */*; q=0.01',
            'Accept-Language': 'en-US,en;q=0.5',
            'Accept-Encoding': 'gzip, deflate',
            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
            'X-Requested-With': 'XMLHttpRequest',
            'Content-Length': '311',
            'Connection': 'keep-alive',
            'Referer': 'http://jjhygl.hzfc.gov.cn/webty/gpfy/gpfySelectlist.jsp',
            'Cookie': 'ROUTEID=.lb6; JSESSIONID=2E78A1FE8DBC80F1CEEE20264BE96B1F.lb6; Hm_lvt_70e93e4ca4be30a221d21f76bb9dbdfa=1559115557; Hm_lpvt_70e93e4ca4be30a221d21f76bb9dbdfa=1559115557',
            'Pragma': 'no-cache',
            'Cache-Control': 'no-cache'}
r = requests.post(url, data =data, headers = headers)
r.content
r.text

返回结果是

b'{"list":[],"pageinfo":"\xe6\x9a\x82\xe6\x97\xa0\xe6\x95\xb0\xe6\x8d\xae"}'
'{"list":[],"pageinfo":"暂无数据"}'

图片说明
请问怎么才能得到图中的信息?

0

6个回答

是因为你给的数据不足够,我刚才打开你的网站试了一下。

header中必须有以下数据

图片说明

body中必须与以下数据

图片说明

结果如你所愿

图片说明
综合来看,你还是对于网站的分析不太够,header中的cookie以及body中的那几个参数应该是请求[http://jjhygl.hzfc.gov.cn/webty/gpfy/gpfySelectlist.jsp]的时候获得。所以需要先请求拿过来参数,第二步再请求这个地址。

0
mx472756841
战渣渣 回复NotBack: google应用里的postman
大约 2 个月之前 回复
NotBack
notback 用的啥工具?分享一下,貌似蛮方便嘛!比我用chrome分析舒服太多了。:)
大约 2 个月之前 回复

确认下POST过去的数据对不对,先用模拟器测试下 data = {'page': 1}

0

你直接把url当做网址点进去看看就知道为什么了

0

这么多data信息 你就传个page?

gply=1&wtcsjg=&jzmj=&ordertype=&fwyt=&hxs=&havepic=&xzqh=&secondxzqh=&starttime=&endtime=&keywords=&page=1&xqid=0&signid=ff80808166484c980166486b4e0b0023&threshold=ff80808166484c980166486b4e0b0021&salt=ff80808166484c980166486b4e0b0022&nonce=0&hash=0448c9b2298cc81d7e0b7a2ab77fcd9261f956537b0939664985b08a1bc4ce20
0

应该是你headers问题,返回数据个好像事json格式的,你尝试将 "Content-Type": "application/json" ; charset=UTF-8', 试下

0

确认下POST过去的数据对不对,先用模拟器测试下 data = {'page': 1}

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
使用 ajax、 post时后台接收到的数据为空null
controllernn@RequestMapping(value="admin/insert/user")n    @ResponseBodyn    public Map<String, String> insertUserType( n            @RequestParam( value =“username ”required=false) String  user...
爬取豆瓣时遇到status为200,返回值正常,但内容为Your IP is restricted.
-
python怎么爬取以post为请求,并且输出响应得xml数据
python怎么爬取以post为请求,并且输出响应得xml数据nn
利用 scrapy 抓取信息, xpath 选择节点返回结果为空
摘自 scrapy 官方文档nn在处理爬虫项目时,完全去掉命名空间而仅仅处理元素名字,写更多简单/实用的XPath会方便很多。你可以为此使用 Selector.remove_namespaces() 方法。nn以Github博客的atom订阅来解释这个情况。nn首先,我们使用想爬取的url来打开shell:nnn$ scrapy shell https://github.com/blog.atom...
使用OKHttp请求json数据一直显示null
问题描述在使用Okhttp3+retrofit2+Rxjava请求json数据时,可以正常请求数据,但是在转换成实体类时,一直显示null,具体问题如下:D/OkHttp: { "error_code" : 0 , "reason" : "Success!" , "result" : { "GetRankTypeRsp" : { "RankList" : { "Rank" : [ { "rankTy
python爬取,响应状态正确,但是解析不出内容
爬取的是58同城租房信息,执行程序后,只是光标在闪烁,长时间不显示结果。由于状态码为200,所以考虑正则表达式是否合理。由于网页源代码中有大量的换行符,一开始匹配用的是[\s\S]*?,并没有考虑所要获取的内容基本都是独一行,所以精简后的正则在获取内容时用(.*?)。再次执行程序,结果就出来了。nn本人初学爬虫,如有更好的解决方法,欢迎评论交流!nn原来的正则表达式为:nnnpat = r'&lt...
python3发送post请求参数为空的情况
post请求的时候如果不带参数,其实作用就跟get请求一样。我们在做接口测试的时候,发现开发就全部使用的post,get的作用就被这样的post空参数请求给替代了。在Python代码请求,如下:...
JAVA开发中,页面post提交的数据后台通过request取出时是空的,所有参数都消失了
这两天调查一个问题,一个特定的制造编号检索出623条数据,并显示在页面上。然后再把数据提交时,后台报空指针,调试后发现request中是空的,所有参数都消失了!换其它的制造编号就不会出现这个问题,开始以为是数据不同,走了不同分支,多次检查数据和代码后并没有发现问题。页面代码也运行正常,没有错误。rn由于页面到后台之间没出任何异常,request内容就凭空消失了,一时找不到方向了。在第N次调试时,页
python爬取json格式的文件内容为空
python爬取json格式的文件内容为空nn有时候爬取json数据的文件所有的都没有错,可内容就是显示不出来,那么这时候你尝试设置请求头试试数据就会显示出来了,有的网站不设置请求头,但是有的网站会限制,识别出来你就不会让你爬取了,设置请求头是一种反爬机制nnhader={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/...
用HttpURLConnection进行Post请求应答结果为null的原因分析
笔者最近在项目中遇到了用HttpURLConnection请求第三方接口,但返回值始终为空的问题。项目中几个大拿费了好长时间,才找到了问题的原因,原来是BufferedReader的readline方法被错误执行了两次导致的。结果虽然很简单,但找原因颇费了一番功夫。现在分享一下。rn(1)问题的现象rnHttpURLConnection请求第三方接口,但返回值始终为空rnrn(2)问题可能原因rn
新增数据时$.post返回的data为0(其中一种情况关于传参问题)
nn当使用拼接参数传递时,所有传递的参数都必须是"&参数名="+值 这样对应,如果是上面定义为"&参数名="+值,而拼接的时候使用"参数名="+值时就会data=0。意思就是格式要对应!...
python中pyquery使用find()方法爬取数据为空的问题的解决
python爬取某东数据,使用find()方法爬取数据为空。情况如下:nnnn错误原因:nnnxmlns="http://www.w3.org/1999/xhtml" 拉出来先打一顿nn解决方法:nnxmlns="http://www.w3.org/1999/xhtml"使pyquery默认解析为xhtml格式,将格式改为html即可。代码如下nnnfrom pyquery import PyQu...
Jmeter请求post,后台一直获取不到数据
关于post请求,后台如何获取请求体的数据的问题总结
返回200却页面崩溃,post 为空 TTFB 10 分钟?
记一次惊(shi)心(fen)动(nao)魄(can)的线上 bug 修复!返回200却页面崩溃,post 为空 TTFB 10 分钟?
Django的request.POST获取不到内容的原因
我通过如下的一段程序发送post请求:import urllib3npool = urllib3.connection_from_url('http://127.0.0.1:8090')nresp = pool.request('POST', '/polls/', fields={'key1':'value1', 'key2':'value2'}, headers={'Content-Type':'
如何解决angularJS中用post方法时后台拿不到值的问题
解决了angularJS框架中用post方法在后台拿不到值的问题。
关于post提交传参,返回null的情况
最近发现一个问题,当表单有这个参数的时候  “enctype="multipart/form-data" 用post提交,参数全部都是null,用get就可以正常提交,nn原来是    multipart/form-data适用于文件上传,会转化成二进制数据,这样传value的话就会以二进制的方式传过去,所以request就获取不到值了nn如果要用post,要把“enctype="multipar...
axios交互post方式 后台取值为空
naxios({n    headers: {n        'deviceCode': 'A95ZEF1-47B5-AC90BF3'n    },n    method: 'post',n    url: '/api/lockServer/search',n    data: {n        username,n        pwdn    }n})nn(本人测试qs有效,但是据相关资料...
利用xpath爬取贴吧时返回的列表为空的问题解决方法
最近在爬取贴吧过程中发现一个小问题,就是爬取好网页HTML信息后,进一步利用xpath爬取站内需要的链接时,返回结果一直是空列表,代码检查了4、5遍一点问题都没有,但就是返回空列表class Spider(object):n n def extract_url(self,html):nn n content=etree.HTML(html)n result=content.xpath('//...
爬虫中ajax获取数据的方式(post)
基于Jsoup的爬虫中ajax获取数据的方式(post)
爬取异步请求(XHR/JS)数据方法一人工分析异步请求
# !/usr/bin/env pythonn# -*- encoding: utf-8 -*-n# Created on 2018-07-06 12:30:04n# Project: test1nnfrom pyspider.libs.base_handler import *nnnclass Handler(BaseHandler):n crawl_config = {n }nn ...
Nodejs POST 请求 req 为空的解决方法
Nodejs req.body 默认为空。如果使用了 express 框架,可以输入以下代码解决nnnvar bodyParser = require('body-parser')napp.use(bodyParser.urlencoded({ extended: false }))napp.use(bodyParser.json())nn ...
python爬虫之爬取ajax数据方法
使用python包:requests,具体方法:1. 首先是定义自己headers,注意headers里面的User-Agent这一字段可以根据自己需求设计一个列表,用于随机调换。2.ajax数据的网页特点:NetWork中的XHR网络流中有一些ajax请求,其中它们request_url必定是一个ajax请求接口,并且headers里面的referer是其跳转前的url,在构造自己的header...
python scrapy框架 爬取网页页数多时,造成数据为空
       在写爬虫时,发现一个问题(使用的时scrapy蜘蛛爬虫),获取某一个页面的数据时,使用css选择器,没有任何问题,但是当用到连续翻页时,页面张数大于5,就会出现,response正常,返回码为200,但是返回的数据为空,我在for循环中加入了time.sleep也没有用。nn       百度原因,发现是因为scrapy中默认的页面请求速度与数据下载速度过快,造成服务器返回的数据为空...
ajax请求后台数据在ie浏览器上显示为空
在其他浏览器上请求的数据都可以取到值,在ie上就显示为空,data显示为空,data.length一直为0,个人觉得一般是ajax的缓存问题,将cache的值改为false,就可以每次请求获取后台返回的最新的数据,就不会出现手动刷新才显示的问题。
post请求方式的翻页爬取内容及思考
1 #coding=utf-8rn 2 rn 3 import urllib2rn 4 import urllibrn 5 import jsonrn 6 rn 9 output = open('huizho.json', 'w')rn11 for page in range(1,30): //爬取的页数,从1至29页rn12 request =urllib2.Request('http:
urllib通过Post请求爬去数据并解析JSON(Python)
1.   封装的请求post函数:def downloadPostPage(url, dictdata, headers, charset='utf-8', reqnum=5):n data = bytes(parse.urlencode(dictdata), encoding=charset)n req = request.Request(url, data, headers=hea...
postman的请求返回body没有数据
1.请求成功,返回body没有数据nnnn(1)断言成功可能是上一个请求发送成功的,有可能是缓存nn(2)body没有数据,发送的请求某部分出错了nn如:少了个o字nnnnnnnn还有就是删除了环境变量n...
Java中后台通过Post方式连接HTTPS获取返回的值
很多时候,我们要通过Java中的jsse来发送post请求给https,然后获取返回的值.n下面就是一个可以使用的源码.nimport java.io.*;nimport java.net.*;nimport java.security.KeyManagementException;nimport java.security.NoSuchAlgorithmException;nimpo
解决返回json数据,属性值为null或空被省略的问题。
当使用com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter转换返回数据为json时,会省略掉为空为null的属性值。n解决办法在spingmvc.xml配置json转换器时加上对空和null的处理,配置如下:nQuoteFieldNames:表示返回的json数据,key值加上双引号。
python 接口请求无返回值时,执行result.json()报错
报错信息:nnnnjson.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)nn例如,delete接口、put接口,通常没有返回结果。nnnresult = requests.put(url, data=param, headers=header)nprint(result.json())nn这个时候再去打印返回的...
ajax使用post提交参数java后台获取值为null但是get却可以获取的问题
请求内添加紫色框内配置即可
html用jQuery进行post提交到php中返回的数组格式怎么使用,返回空值是怎么回事?
php部分,转换成json格式输出$list = json_encode($res1); necho $list;jquery部分 $.post("{:url('test')}",{n attr:attr,n goods_id:$('input[name="goods_id"]').val() ,n spec_id:spec_id ,n sell_price:sell_...
python3 网络爬虫(二)利用get请求获取网页的动态加载数据
环境:python3.4 n win7 n框架:scrapy 接着上一篇,这一次来说说如何获取网页上动态加载的数据:n 作为初学者的我们,刚开始接触爬虫一般都只会爬取一些静态内容(如何区别静态内容和动态内容,理论我们在这里就不说了,教的是一些小方法):n 首先,打开谷歌浏览器,然后按F12,然后就会弹出谷歌自带的 开发者工具,在 “Elements”下先找到你需要抓取的
python3 网络爬虫(三)利用post请求获取网页的动态加载数据
环境:python3.4 nwin7 n框架:scrapy上一篇讲了利用get请求获取王爷的动态加载数据,这一篇文章让我们来简单介绍一下如何用post请求来获取网页的动态加载数据,这一次我们面对的是某音乐网站的歌曲评论,利用 谷歌浏览器 - F12(开发者工具) - 查看Headers 的方式我们可以查看在浏览该网页时的一些信息:(如何抓包,上一篇文章已经介绍了,有兴趣的可以去看看,这里就
在vuecli中使用axios请求发送成功,获取不到返回值的问题
首先我先描述一下我遇到的问题,以便读者对症下药:nn在vuecli中使用axios,请求成功,network也能看见返回的值,但是进入.then(res)中时,res时undefined,原代码如下:nnnnaxios.post('http://localhost:12612/api/register', this.ruleForm)n .then((res) => { //res为...
调用其它接口返回空,但使用postMan和前台发送ajax请求,都可以拿到数据
在项目中,需要调用别的系统的一个接口,然后,返回的结果始终为空;然而使用postman和前台发送ajax都可以拿到数据;也没有报错,就是返回 空的结果集,找了半天没发现问题出现在哪里;n出现这种情况的原因:n往往都是因为你的参数写的有问题;我就是因为在传参的时候,本来一个传一个对象的集合,结果只传了一个对象,造成结果为空n 例如:n 需要传的参数是 { "pdg" : [ {"id" :1...
解决ajax 传递为空但显示在页面上为undefined 问题
昨天写代码遇到一个问题,这个问题以前也遇到过,只不过那时以为简单就没做什么笔记,结果昨天遇到还是要去查百度,查百度又要找好一会儿,所以就记录一下。避免以后忘记。 n首先问题是这样的:我用ajax到动态的做表格插入,从后台传回来一个对象的list集合,然后进行遍历动态的生成表格的行。后台写的都正确的,结果表格有些内容为显示为undefined。后来我调试了一下发现ajax自动的把为空的字段设成了und
scrapy爬取post的数据
1.爬取瑞钱宝的投资方式的数据,爬取内容如下:n  n  n2.查看网址,可以发现:nnnnnnnnn点击下一页时,地址栏里的链接均无任何变化。可以判断出该网页的数据都是post方式上传的。n说一下get和post的区别:nget显式的传参,而post是隐式的。nget的URL会有限制,而post没有。nget没有post安全。n不过,小某还看到一篇内容。点击打开
post请求网站数据爬取!!!Python学习笔记!
对于刚开始学习Python的童鞋来说,对于网站的爬取可能很模糊,对网站的请求方式也不太了解。下面先简单介绍一下几种常见的网站请求方式,get、post
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 python数据爬取教程 python爬取价格是空的