c httpclient抓取网页(先来说下数据抓取系统的大致工作流程.下背景 )
优采云 发布时间: 2021-11-10 01:02c httpclient抓取网页(先来说下数据抓取系统的大致工作流程.下背景
)
公司的数据采集系统已经写了一段时间了,是时候总结一下了。否则,以我的记忆力,过一会我就会忘记。打算写个系列,记录下我踩过的所有坑。临时设置一个目录,按照这个系列写:
今天,我们来谈谈数据采集的一般工作流程。
我先说一下背景。该公司正在做企业信用报告服务。整合各个方面的数据,生成企业信用报告。主要数据来源包括:第三方采购(整体采购数据或界面形式);捕获在 Internet 上公开可用的数据。那么就需要一个数据采集平台,以便为采集方便快捷地添加新的数据对象。关于数据采集平台的架构设计,我也是新手,以后会吸取这次的经验教训。本系列从实战开始,然后是第一点:数据抓取的全过程。
我的日常数据采集分为以下几个步骤:
咳咳……先别扔鸡蛋了,我知道有人觉得这三步是我在努力做的。但是,先听我说。##清除数据采集 需要先分享一个场景:
- 产品经理:小张帅哥,我发现这个网站里面的数据对我们非常有用,你给抓取下来吧。
- 小张:好啊,你要抓取那些数据呢
- 产品经理:就这个页面的数据都要,这里的基本信息,这里的股东信息
- 小张:呃,都要是吧,好
- 产品经理:这个做好要多久啊,
- 小张:应该不会太久,这些都是表格数据,好解析
- 产品经理:好的,小张加油哦,做好了请你吃糖哦。
- 然后小张开始写,写了一会儿小张脸上冒汗了:这怎么基本信息和其他信息还不是一个页面。这表格竟然是在后台画好的,通过js请求数据画在页面的,我去,不同省份的企业表面看着一样,其实标签不一样。这要一个一个省份去适配啊啊啊啊啊啊.
- 小张同志开始加班加点,可还是没有按照和产平经理约定的时间完成任务
那么问题来了,为什么小张这么努力地加班,还没有完成任务。是不是产品经理没把需求说清楚?但是产品经理也说这个页面都是需要的。问题是:
分析数据的url和相关参数要采集,我先走一遍我想爬取数据的过程,看下面四张图:
提取url和参数
从以上四张图,我们可以确定有以下连接需要处理:-1. 获取验证码connection-2。提交查询-3。查看基本注册信息页面
那么我们来看看这三个步骤的提交地址和参数。这里我们使用 Chrome 的开发者工具进行页面分析。类似的工具有很多,各个浏览器自带的开发者工具基本可以满足需求,也可以使用一些第三方插件:如firebug、httpwatch等。
编写代码实现功能
通过前面的步骤,我们已经提取出公司的基本注册信息为采集。我们需要提交三个请求,每个提交方法(POST 或 GET),以及提交的参数。下一步就是用代码实现上面的步骤,得到你想要的数据。本文文章不重复代码实现的具体逻辑,因为本文的重点是讲解:抓取网页的工作流程。后期会一一总结代码实现过程中用到的关键技术点和踩过的坑。暂时列出涉及的相关内容:
您也可以到我的个人网站查看
或者,欢迎关注我的微信订阅号,每天一个小笔记,每天进步一点点:
对公众有好处:enilu123