问答

问答>关于json数据提取有更好的方法吗?
关于json数据提取有更好的方法吗?

本文地址:http://www.kvyku.com.cn/question/detail/0D86726B-2862-4539-A81E-B43174CE64D9
文章摘要:关于json数据提取有更好的方法吗?,征尘进口国比别,媒体俯拾仰取纸包不住。

在日常数据采集,江苏福彩快三:许多网站采用了json数据,用一般的采集器根本无法提取json数据,如果你用正则那太慢了,一般我自己会用代码写json数据匹配提取,说下你们经常提取json数据的方法?

我来回答
发布
7个回答
默认排序
  • U_96584498754 2017-06-07
    可能要自己写软件,市场好像没有采集软件支持json解析的。
    0条评论 举报
    发布评论
  • gaoming 2017-08-14

    json全称是JavaScript Object Notation,是一种轻量级的数据交换格式。一般而言,用于服务器和客户端(C/S)和服务器和浏览器(B/S)之间交换信息的。

    在javaweb开发中,以及网站开发中,当客户端或者浏览器向服务器发出请求时,服务器会解析这次的请求,将请求数据从数据库中取出或者程序直接生成,封装成Json,作为ResponseBody直接返回给浏览器或客户端,浏览器或客户端解析Json数据渲染页面。

    Json数据的优点在于轻量级、传输的速度很快,所以应用比较广。

    一般的爬虫程序主要有两种,一种就是模拟请求,得到response,直接解析response,但是这种情况主要适用于get请求,和一些简单的post请求,而且response是没有经过页面的JS和ajax渲染的,也就是还有很多数据是通过异步请求得到的,而分析这种异步请求(post)又是比较困难的。第二种就是使用selenium+浏览器(chrome、phtomjs等),自动化测试,控制程序打开浏览器,在页面上操作,直观的得到数据。

    对于简单的网站,一般采用的就是第一种,针对程序而言,不针对获取数据的难易。第二种就涉及到很多,比如验证码的破解,动态加载。八爪鱼就类似于第二种,封装的很好,只不过对于不同网站的验证码,现在的识别效果还是有待提高,而且网站的差异性很大,无法做到全面。更重要的是收费,很多公司养了那么多程序员,如果能自己写一个专门爬虫的程序,为什么还要浪费这个钱呢?


    所以也解释了为什么一般的采集器无法提取json,因为他们都是第二种,自动化测试的内容。模拟浏览器操作,内容都是json渲染出来的结果。


    第二个问题,如何匹配,json很少说用正则匹配的,因为json内容很长,固定的键值对形式,一般用键加冒号来隔开效果也就那样,可以这样做。通常来说都是自己写程序获取json,用python带的json包取解析,效果很好。但是用八爪鱼这种第三方软件你想这样做还是要看他们的程序员能否给你写这个接口了。

    0条评论 举报
    发布评论
  • 贾乐_2505875177 2017-07-05
    取到json用python自带json包来解析
    0条评论 举报
    发布评论
  • U_98483982639 2017-06-26

    It is very easy,i use scrapy to parse json like below

    json_str = response.body
    item = dict(json.loads(json_str))
    ...

    0条评论 举报
    发布评论
  • 取到json用python自带json包来解析
    0条评论 举报
    发布评论
下拉加载更多回答!
官方客服
香港六合彩官方网 188网球比分直播网 传统彩票 快三开奖结果 陕西十一选五任三遗漏
秒速时时彩开奖号码 福建31选7直播 内蒙古快三专家预测 ps历史记录快捷键 11选5杀号大师100准确
黑龙江11选5任选8计划 湖北十一选五技巧 千禧福彩3d开机号今天 冠军五码技巧 北京快三走势图
时时彩软件 刮刮乐买一本容易中大奖吗 青海快3后面会出什么号 幸运飞艇免费计划数据 深圳风采35选7开奖公告