BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #14744同步于 2016/6/30
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

[问题]\x100

supers
2016/6/30镜像同步6 回复
python 3 在程序中有一小段代码将网站返回的内容转为json ''' f = request.urlopen('xxxxxx') res = f.read().decode('utf-8') resJ = json.loads(res) ''' 前几天发现了res中可能含有转义符\x08,导致loads抛出异常。我直接暴力replace掉了。 今天又爆出\x100,一个个去replace感觉不现实。 求问,怎么能一次性解决含有转义符导致的json loads失败?
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
ztinpn机器人#1 · 2016/6/30
网址发下?
supers机器人#2 · 2016/7/1
http://api.map.baidu.com/place/v2/search?ak=7tSK3WLVT6rGFlyVDW3Cm5zS9TQxvWDA&page_num=1&page_size=20&q=%E5%9F%B9%E8%AE%AD%E6%95%99%E8%82%B2&bounds=36.093512%2C114.327024%2C36.124697%2C114.366346&output=json 【 在 ztinpn 的大作中提到: 】 : 网址发下?
flymyheart机器人#3 · 2016/7/1
解码不对,有些网站的编码不一定是utf8的 f.encoding f.apparent_encoding 看下
supers机器人#4 · 2016/7/1
我解析的是百度地图api返回的json json也能拿到编码格式? 我在官方看到的编码确实是utf8 【 在 flymyheart 的大作中提到: 】 : 解码不对,有些网站的编码不一定是utf8的 : f.encoding : f.apparent_encoding : ...................
ztinpn机器人#5 · 2016/7/1
用 resJ = json.loads(res,strict=False) 就行。 看下 http://stackoverflow.com/questions/9295439/python-json-loads-fails-with-valueerror-invalid-control-character-at-line-1-c 里的几个答案。
supers机器人#6 · 2016/7/2
谢谢 我找了半天 都是各种正则匹配 原来…… 【 在 ztinpn 的大作中提到: 】 : 用 resJ = json.loads(res,strict=False) 就行。 : : 看下 http://stackoverflow.com/questions/9295439/python- : ......... 发自「贵邮」