热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

抓取网络json数据并存入mongodb(1)

我们在百度中搜索http:shixin.court.gov.cn,会有一个内嵌的查询页面:这个是通过ajax技术加载的,因为是js渲染,所以页面源代码中并不包含这些信息。通过Firefox的F

我们在百度中搜索http://shixin.court.gov.cn/ ,会有一个内嵌的查询页面:


这个是通过ajax技术加载的,因为是js渲染,所以页面源代码中并不包含这些信息。

通过Firefox的Firebug监视网络请求,发现是向百度opendata请求的,结果返回一个包含100条数据的json


这样,通过分析请求字符串的参数,自定义请求,可以通过爬虫直接爬取的数据。

有了数据之后需要解析,每次请求会返回100条数据,现在需要把这100条数据全部解除出来并存入Mongodb数据库中。

爬虫使用webmagic:https://github.com/code4craft/webmagic

数据库Mongodb驱动使用 https://github.com/mongodb/mongo-java-driver

maven坐标:



us.codecraft
webmagic-extension
0.5.2



org.mongodb
mongo-java-driver
2.7.3


webmagic爬虫框架使用参考:http://webmagic.io/docs/zh/

我在爬取时候自定义了PageProcessor,在这里将数据解析并存入Mongodb,并且使用了爬虫框架自带的FilePipeline将数据持久化到磁盘文件。


每次请求返回的是100条数据,需要通过分析,将这100条分离成一个个独立的json字符串,然后一条条插入。

插入数据的时候,还要判断数据是否重复。

json格式字符串可以直接存入数据库。

Mongo mOngo= new Mongo();
DB db = mongo.getDB("shixinTest");
DBCollection q=db.getCollection("shixinTest1");
// new BasicDBObject();
// 通过JSON.parse构造DBObject
DBObject query = (BasicDBObject) JSON.parse(JsonString)

q.save(query);


json字符串存入mongodb数据库:



爬虫实现部分在:抓取网络json数据并存入mongodb(2)





推荐阅读
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 一个登陆界面
    预览截图html部分123456789101112用户登入1314邮箱名称邮箱为空15密码密码为空16登 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 本次考试于2016年10月25日上午7:50至11:15举行,主要涉及数学专题,特别是斐波那契数列的性质及其在编程中的应用。本文将详细解析考试中的题目,并提供解题思路和代码实现。 ... [详细]
  • 脑机接口(BCI)技术正逐步将科幻变为现实,从帮助听障人士恢复听力到使瘫痪者重新站立,甚至可能将多年的学习过程压缩至瞬间。本文探讨了这一前沿技术的现状、挑战及其未来前景。 ... [详细]
  • 深入探讨智能布线管理系统的电子配线架应用
    本文详细介绍了电子配线架智能布线系统的核心优势,包括实时监测网络连接、提高操作准确性、图形化显示连接架构、自动识别网络拓扑、增强安全性等功能。该系统不仅提升了网络管理的效率和准确性,还为资产管理、报告生成以及与其他智能系统的集成提供了强大的支持。 ... [详细]
  • 本文详细解析了如何使用Python的urllib模块发起POST请求,并通过实例展示如何爬取百度翻译的翻译结果。 ... [详细]
  • 百度搜索结果链接提取工具 UrlGetter V1.43
    该工具专为获取百度搜索引擎的结果页面中的网址链接而设计,能够解析并转换为原始URL。通过正则表达式匹配技术,精准提取网页链接,并提供详细的使用说明和下载资源。 ... [详细]
  • 探索如何使用公共数据集为您的编程项目提供动力。无论您是编程新手还是有经验的开发者,本文将为您提供实用建议和资源,帮助您启动并运行一个创新的数据驱动型项目。 ... [详细]
  • 本文详细介绍了如何使用 HTML 和 CSS 对文件上传按钮进行样式美化,使用户界面更加友好和美观。 ... [详细]
  • 理解文档对象模型(DOM)
    本文介绍了文档对象模型(DOM)的基本概念,包括其作为HTML文档的节点树结构,以及如何通过JavaScript操作DOM来实现网页的动态交互。 ... [详细]
  • 本文探讨了浏览器的同源策略限制及其对 AJAX 请求的影响,并详细介绍了如何在 Spring Boot 应用中优雅地处理跨域请求,特别是当请求包含自定义 Headers 时的解决方案。 ... [详细]
  • 本文将介绍如何利用Python爬虫技术抓取国内主流在线学习平台的数据,并以51CTO学院为例,进行详细的技术解析和实践操作。 ... [详细]
  • 深入分析十大PHP开发框架
    随着PHP技术的发展,各类开发框架层出不穷,成为了开发者们热议的话题。本文将详细介绍并对比十款主流的PHP开发框架,旨在帮助开发者根据自身需求选择最合适的工具。 ... [详细]
author-avatar
等号拖轮_496
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有