首页 新闻 会员 周边

求助!爬取json接口的数据,返回的数据不完整,但用浏览器中(如图)可以看到

0
悬赏园豆:100 [待解决问题]
我很好u的主页 我很好u | 初学一级 | 园豆:102
提问于:2019-04-16 11:25
< >
分享
所有回答(4)
0

具体没用过这个玩意儿,很多种可能
比如解析方式(http包解析)不同造成;
比如为了快速读取解析,一次性分缓冲区,而缓冲区大小不足;
and so on。
估计你要做的是:1此模块是支持的情况下设置参数;
2不支持,换sdk;
3或者直接从tcp写也很简单;

花飘水流兮 | 园豆:13560 (专家六级) | 2019-04-16 11:37
0

你不要打印,把请求的数据保存到本地txt看下

三人乐乐 | 园豆:4819 (老鸟四级) | 2019-04-16 11:38
0

你直接浏览器中访问 airbnb 的地址另存为wxplore_tabs.json文件,该文件的大小已经达到了160多kb,比较大了。
针对你上面反馈的问题,一般会出现如下几种情况:
1、request中设置的buffer小了,然后无法全部获取到这个文件;此时可以在urlopen()调整参数进行修改;
2、request的默认超时时间短了,访问airbnb的地址由于文件大,超时了,然后只能解析到接收到的数据,此时可以在urlopen()中添加超时配置。

西越泽 | 园豆:10775 (专家六级) | 2019-04-16 14:47
0

我的浏览器打开这个url也看不到“锦江区”。我的浏览器和python请求到的数据是一致的。
确认一下浏览器打开的url和Python请求的是否一致。
如果一致,看下浏览器里面是不是登录了。清除浏览器缓存再打开看看。
如果清除缓存之后和请求下来的内容一样,你在请求里面带上cookie就可以了。

还有返回的数据不完整,是json数据就是断的,也就是json解析不了;还是json是完整的,只是解析出来数据和浏览器打开的不一致,麻烦描述清楚一点。

Masako | 园豆:1893 (小虾三级) | 2019-04-16 14:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册