什么是网络爬虫

什么是网络爬虫,第1张

爬虫,脊椎动物。

或称爬行类、爬虫类,属于四足总纲的羊膜动物,是对蜥形纲及合弓纲除鸟类及哺乳类以外所有物种的通称,包括龟、蛇、蜥蜴、鳄及已绝灭的恐龙与似哺乳爬行动物等等。

骨骼系统

爬行动物的骨骼系统大多数由硬骨组成,骨骼的骨化程度高,很少保留软骨部分。

大部分的爬行动物缺乏次生颚,所以当它们进食时,无法同时呼吸。鳄鱼已发展出骨质次生颚,使它们可在半隐没至水中时持续呼吸,并防止嘴中的猎物挣扎时,伤及脑部。石龙子科也演化出骨质次生颚。

爬虫技术是一种自动化程序。

爬虫就是一种可以从网页上抓取数据信息并保存的自动化程序,它的原理就是模拟浏览器发送网络请求,接受请求响应,然后按照一定的规则自动抓取互联网数据。

搜索引擎通过这些爬虫从一个网站爬到另一个网站,跟踪网页中的链接,访问更多的网页,这个过程称为爬行,这些新的网址会被存入数据库等待搜索。简而言之,爬虫就是通过不间断地访问互联网,然后从中获取你指定的信息并返回给你。而我们的互联网上,随时都有无数的爬虫在爬取数据,并返回给使用者。

爬虫技术的功能

1、获取网页

获取网页可以简单理解为向网页的服务器发送网络请求,然后服务器返回给我们网页的源代码,其中通信的底层原理较为复杂,而Python给我们封装好了urllib库和requests库等,这些库可以让我们非常简单的发送各种形式的请求。

2、提取信息

获取到的网页源码内包含了很多信息,想要进提取到我们需要的信息,则需要对源码还要做进一步筛选。可以选用python中的re库即通过正则匹配的形式去提取信息,也可以采用BeautifulSoup库(bs4)等解析源代码,除了有自动编码的优势之外,bs4库还可以结构化输出源代码信息,更易于理解与使用。

3、保存数据

提取到我们需要的有用信息后,需要在Python中把它们保存下来。可以使用通过内置函数open保存为文本数据,也可以用第三方库保存为其它形式的数据,例如可以通过pandas库保存为常见的xlsx数据,如果有图片等非结构化数据还可以通过pymongo库保存至非结构化数据库中。

在我没接触这一行时这个问题困扰了我很长时间,让我十分的不理解到底什么是爬虫,它难道是一种实体工具?,直到我学习python 深入分析了解以后才揭开了它神秘的面纱。

爬虫是什么呢?爬虫有简单的爬虫和复杂的爬虫。实际上简单的爬虫是一种 脚本 ,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。

脚本就是粗糙的,但往往非常实用的小程序(一般来说不会超过几千行,有时候也就几百几十行的代码构成)。举个简单的例子,你现在要从一个学生租房的网站上读取关于出租的学生公寓的信息。你一条一条去抄写肯定是不现实的。所以就要用爬虫。可以把一个信息类网站上几千条信息一次全部扒下来。百度,谷歌这类的搜索引擎你也可以认为是一种爬虫,只不过这类的技术十分的复杂,不是简单的脚本。

搜索引擎是如何工作的?其实就是通过网络爬虫技术,将互联网中数以百亿计的网页信息保存到本地,形成一个镜像文件,为整个搜索引擎提供数据支撑。

这样的技术首先就会涉及到一个十分重要并且人人关注的问题——是否违法?

仔细探究后总结出了如下观点:

1.遵守 Robots 协议,但有没有 Robots 都不代表可以随便爬,

2.限制你的爬虫行为,禁止近乎 DDOS 的请求频率,一旦造成服务器瘫痪,约等于网络攻击;

3.对于明显反爬,或者正常情况不能到达的页面不能强行突破,否则是 Hacker 行为;

4.审视清楚自己爬的内容,绝不能触碰法律的红线。

至此你应该明白,爬虫本身并不违法,而是要看你使用的方式和目的,还要看其商业用途。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/467799.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-05
下一篇2023-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存