教您如何从Internet采集大量数据.

优采云 发布时间: 2020-08-06 08:08

  Internet是一个大型网络,可以将采集数据的小型程序生动地称为“爬虫”或“蜘蛛”.

  搜寻器的原理非常简单. 当我们访问网页时,我们将单击翻页按钮和超链接,浏览器将帮助我们请求所有资源和图片. 因此,您可以设计一个程序,该程序可以模拟人在浏览器上的操作,并使网站错误地认为爬虫是正常的访问者,并且会乖乖地将所需的数据发送回去.

  爬虫有两种类型,一种搜索引擎爬虫,可以捕获所有内容,例如百度(黑色). 另一个是经过开发的,只能准确地捕获所需的内容: 例如,我只需要二手房信息,并且我不想在其旁边放置广告和新闻.

  名称搜寻器不好用,所以我将此软件命名为Hawk,指的是“ Eagle”,它可以准确,快速地捕获猎物. 基本上不需要编程,并且可以通过类似于Photoshop的图形化拖放操作来快速设计搜寻器. 它可以在20分钟内为Dianping编写爬虫程序(简化版只需要3分钟),然后就可以运行它.

  以下是使用Hawk捕获二手房的视频. 建议在wifi环境中观看:

  自动将网页导出到Excel

  那么,页面是如此之大,爬虫如何知道我想要的?

  

  当然,人们可以很容易地看到上图中的红色框是二手房的信息,但是机器不知道.

  网页是一棵结构化的树,重要信息所在的节点通常很繁华. 举一个不适当的例子,由家谱组成的家谱,谁是最好的?当然是:

  每个人都会认为这个家庭太强大了!

  当我们对整个树结构进行评分时,我们自然可以找到最强大的节点,即我们想要的表. 在找到最好的爸爸之后,尽管儿子相似: 个子高大,英俊,有两条胳膊和两条腿,但这些是共同的特征,没有足够的信息. 我们关心的是特性. 长子的锥子脸与其他人不同,那是重要的信息. 第三儿子是最富有的人,也是我们所关心的. 因此,通过比较儿子的不同属性,我们可以知道哪些信息很重要.

  返回网页采集示例. 通过一组有趣的算法提供网页地址,该软件会自动将其转换为Excel! (不明白吗?如果您不明白,则不必关心这些细节!)

  ◆◆◆

  裂纹翻页限制

  获取一页的数据还不够,我们要获取所有页面的数据!很简单,我们让程序一个接一个地请求第一页,第二页...数据被采集回

  就这么简单吗?该网站如何允许如此轻松地带走其宝贵数据?因此它只能转到第50页或第100页. Chain Home就像这样:

  

  这也不打扰我们. 每页有30个数据,而100页最多可以显示3000个数据. 北京有16个区县的20,000个社区,但每个区的社区数量不到3,000个. 我们可以分别获取每个地区的社区列表. 每个社区最多有300多个二手房待售,因此可以获得联家的所有二手房.

  然后,我们启动抓取器,Hawk将为每个子线程(可以理解为机器人)分配一个任务: 为我抓取该社区中的所有二手房!然后,您将看到一个壮观的场景: 一堆小型机器人协同工作以从网站上移动数据,是否有超级牛迅雷?同时执行100个任务! !当我从厕所回来时,我会抓住它! ! !

  

  ◆◆◆

  清洁: 识别并转换内容

  获得的数据如下:

  

  但是您将看到,应该删除一些奇怪的字符. xx平方米应提取的所有数字. 而价格,有些是213万元,有些是373万元,这些都很难应付.

  但是,没关系! Hawk可以自动识别所有数据:

  哈哈,那么您可以轻松地使用这些数据进行分析,纯净无污染!

  ◆◆◆

  破解需要登录的网站

  当然,这里的意思不是破解用户名和密码,它还不够强大. 某些网站数据需要登录才能访问. 这不会打扰我们.

  当您打开Hawk的内置嗅探功能时,Hawk就像一个录音机,它将记录您对目标网站的访问. 之后,它将重播它以实现自动登录.

  您是否担心Hawk保存您的用户名和密码?如何不保存自动登录?但是Hawk是开源的,所有代码都已经过审查并且是安全的. 您的私人信息将仅位于您自己的硬盘中.

  

  (我们像这样自动登录到滇平)

  ◆◆◆

  我是否也可以捕获数据

  理论上是. 但是这条路高至一英尺,而魔术却在高处. 不同的网站是非常不同的,并且有许多技术可以对抗爬虫. 这些错误对细节非常敏感. 只要您输入有误,下一步可能就不会继续.

  该怎么办? Desert先生保存并共享以前的操作,您只需加载这些文件即可快速获取数据.

  如果您可以访问其他网站,则可以在您周围找到程序员和同学,并要求他们帮助捕获数据,或者让他们尝试Hawk来看看谁更有效.

  如果您是一名文科生的女孩,我建议您看看东野圭吾和村上春树. 直接使用如此复杂的软件会让您发疯. 我应该打电话给谁来帮助捕获数据?呵呵呵...

  ◆◆◆

  在哪里可以获得软件和教程?

  Hawk: 使用C#/ WPF软件简介编写的高级Crawler&ETL工具

  HAWK是数据采集和清理工具,根据GPL协议是开源的,可以灵活,有效地从网页,数据库和文件中采集数据,并通过可视化的拖放快速生成,过滤和转换. 最适合其功能的区域是爬网程序和数据清理.

  鹰的意思是“鹰”,可以有效,准确地杀死猎物.

  HAWK用C#编写,其前端接口是用WPF开发的,并且支持插件扩展. 通过图形操作,可以快速建立解决方案.

  GitHub地址:

  Python等效的实现是etlpy:

  作者开发的项目文件已发布在GitHub上:

  使用时,单击文件并加载项目以加载它.

  如果您不想编译,则可执行文件位于:

  密码: 4iy0

  编译路径为: Hawk.Core \ Hawk.Core.sln

  国内一站式数据智能分析平台ETHINK提供本文

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线