分享好友 最新动态首页 最新动态分类 切换频道
Chrome插件 | WEB 网页数据采集和爬虫程序
2024-12-26 21:34

无边无形的互联网遍地是数据,品类丰富、格式繁多,包罗万象。数据采集,或说抓取,就是把分散各处的内容,通过各种方式汇聚一堂,是个有讲究要思考的体力活。君子爱数,取之有道,得注意遵守相关的法律法规和网站的使用政策😎

Chrome插件 | WEB 网页数据采集和爬虫程序

21世纪是信息时代,信息就是财富。数据(信息)采集是指从信息使用者的需要出发,通过各种渠道和形式获取相关信息的过程.。采集及时、准确、全面的信息是信息管理的基本前提,同时也是管理者决策的参考依据。

写论文时,从统计局网站粘贴几个数值;不定时将公示结果转存到Excel;批量把在线的高清美图下载到本地。这些都是 WEB 数据采集的日常例子。

信息采集最简单最原始的方式,就是人力直接操作,CTRL+C、CTRL+V一套组合拳下来,数据就到碗里来了👏🏻。不过,这数据量一旦上来,铁打的人都吃不消。于是乎,人们想到了用电脑来代替人工,爬虫程序就这样诞生了。

在此之前,我们应该先简单了解下网页内容渲染机制。

所谓的自动化程序,就是用机器大批量地发起请求,拿到响应后再做处理。专业术语叫做或者。

此方案需要我们至少熟悉一门编程语言(Python、Node.js、Java等,自行编写代码或者借助优秀的开源爬虫框架,实现数据获取。某些场景,还需要通过抓包分析目标网站的参数规则,然后通过组合式请求方能达到目的。

这里罗列下我用过或收藏且还在不断更新维护的框架

名称开发语言简介ScrapyPythonA fast high-level web crawling & scraping framework for Python.PyspiderPythonA Powerful Spider(Web Crawler) System in Python.NutchJava一种高度可扩展、可伸缩的开源 Web 爬虫软件项目。功能强大,支持 Hadoop 集群内运行webmagicJava一个简单灵活的Java爬虫框架。基于WebMagic,你可以快速开发出一个高效、易维护的爬虫。真的非常简单😄Spiderman2Java开源Web数据抽取工具,我没实际使用过node-crawlerNode.jsWeb Crawler/Spider for NodeJS + server-side jQuery 😉

首先访问目标网站,按需进行登录,然后按下键盘 F12(或者 Ctrl+Shift+I)进入开发者工具,可以在中写或贴入 JS 脚本,回车收尾😎。

这是我常用的一种方式,用户验证脚本跟少规模作业。

WEB 自动化测试工具,是指通过程序代替人工完成验证 WEB 功能的过程。当然,也能利用它来抓取数据。这类工具通过驱动程序(webdriver、DevTools Protocol,驱使浏览器执行既定的动作/脚本。

  • Selenium:老牌大哥,我最开始接触的自动化测试工具,支持 Chrome、Edge、Firefox、IE、Safari 等浏览器,对开发语言支持也很广:Java、Python、C#、Ruby、JavaScript
  • Puppeteer: Chrome 开发团队在 2017 年发布的一个 Node.js 包,用来模拟 Chrome 浏览器的运行。主打对 Chrome 的良好支持,社区有针对 Java、Python 版本。
  • Playwright:微软大厂出品,浏览器支持 Chrome、Edge、Firefox、Safari,官方提供 Java、Python、Node.js、C# 编程语言的 SDK。

这两个软件跟上一节工具基本一致,之所以单独列出来,是因为它们提供了更丰富的接口,既能控制浏览器完成任务,又可以制作 GUI 界面(可用于与爬虫程序交互)。

官方应该叫做浏览器扩展(Extensions,但是我们习惯叫做插件😄,后续文章我将重点以此方式进行实践。

浏览器扩展(插件)是运行在特定浏览器,遵循相关规范的应用程序包,由 JS、CSS、HTML 组成,能够管理标签页、注入代码、操作DOM、监控页面活动等。

插件功能非常强大,具体的文档详见Chrome Extensions Document。不过有一个小遗憾是不能在插件内打开标签页的开发者工具,官方给出的回答是出于安全考虑。

有大佬做的强大插件webscraper插件(本地使用免费👍。

我们在做数据采集时,可以根据实际情况灵活选择方案。不过,无论是何种方式,都要随着目标网站的更新迭代,做相应的适配,否则会出现程序无效的情况,而这是一个耗时耗力的过程🙂。

当 ip 被限制,就无法正常访问网站或服务。我们的请求很可能被防火墙、网关、WAF(Web 应用防护系统)等前置设备、应用拦截,压根没有到藏在后面的网站。常用应对方式是更换终端IP,比如用代理。

对于文字型可以用OCR,简单交互类的可以用脚本模拟人工拖拽动作,逻辑类的话就难很多,需要对症下药。当然也可以花钱调商用接口,我用过的有超级鹰。

关于行为检测,我没有深入了解,只是在一个爬取某国外社交平台数据时,直接告诉我,是因为操作路径每次都一样而被拦截😒。

有数据的地方就有江湖,爬取与反爬取,是一个长期博弈的过程。今天道高一尺,明日魔高一丈,唯有不断学习进步,方能跬步前行。

最新文章
新澳天天开奖资料大全三十三期|全新答案解释落实
  随着数字技术的发展和人们对生活品质的追求,交流与分享各个行业中收集和整理的资料变得越发重要。在彩票开奖等游戏领域,越来越多的人们开始关注如何更有效地利用开奖资料来进行数据分析,以期发现潜在的规律。本文旨在提供一个关于新
高中教师岗位述职报告
岁月流逝,流出一缕清泉,流出一阵芳香,回顾这段时间以来的工作,我们取得了不错的成绩,好好准备一份述职报告吧。怎样写述职报告才更能吸引眼球呢?下面是小编为大家收集的高中教师岗位述职报告,仅供参考,希望能够帮助到大家。我叫龙甸
如何在Word文档中有效删除多余的整页内容技巧总结
Word文档怎么删除一整页How to Delete an Entire Page in a Word Document在使用Word文档时,删除多余的页面是一个常见的需求。无论是因为误插入了空白页,还是文档内容的调整导致某些页面不再需要,掌握删除整页的方法都是非常重要的,m.e
山东9地2025寒假放假时间(最新公布)
马上年底了,各位学生及家长们,最期待的当然就是——寒假啦!山东9地已经公布了最新寒假时间,赶紧一起来看看把!济南义务教育阶段(小学、初中):2025年1月18日—2月12日,共计26天。高中阶段:2025年1月25日—2月12日,共计19天。青岛2025
华为10新功能介绍,华为全新功能揭秘
华为推出新功能,包括增强隐私保护、智能语音助手、超高清摄像头等。本文目录导读:产品概述新功能介绍华为作为全球领先的科技企业,近年来在产品创新方面取得了显著成就,我们将为您介绍华为最新推出的10系列产品的全新功能。华为10系列是
打破写作瓶颈,AI全能工具助你快速提升写作水平!
在信息爆炸的时代,写作已经成为人们日常生活中不可或缺的一部分。无论是学生的论文、职场的报告,还是个人的创作,写作的需求无处不在。然而,面对繁重的写作任务,许多人常常感到力不从心。为了解决这一问题,爱制作AI应运而生,它是一款
天翼云盘怎么用 天翼云盘使用方法介绍【详解】
  天翼云盘 怎么用?相信广大的用户们对于这款天翼云盘软件也是非常的熟悉了,这款软件可以帮助用户们进行文件的存储、分享以及备份等等,功能还是比较丰富强大的,但是还是有不少的小伙伴都不知道怎么使用这款软件,今天小编就给大家带来
图解爬虫,用几个最简单的例子带你入门Python爬虫
爬虫一直是Python的一大应用场景,差不多每门语言都可以写爬虫,但是程序员们却独爱Python。之所以偏爱Python就是因为她简洁的语法,我们使用Python可以很简单的写出一个爬虫程序。本篇博客将以Python语言,用几个
[软件]搜狗输入法PC版 v14.4.0.9307 精简优化版
* 去广告,精简优化,禁止自动升级,有效阻止程序广告弹窗!* 纯净无广告,无多余干扰提示,默认无不必要联网程序驻留!* 阻止检测升级联网请求,下载释放广告程序收集相关信息推送广告行为* 可选:云计算候选、词库更新及账户配置同步、工
月神的迷宫角色强度排行榜-月神的迷宫2021角色强度排名
月神的迷宫今天就已经上新的了,游戏中很很多的不同的角色,但是很多玩家都不知道要怎么选择那些角色,那些角色比较强呢?下面小编就给大家带来月神的迷宫角色强度排行榜,希望可以帮到大家。
相关文章
推荐文章
发表评论
0评