爬虫技术是啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫技术是啥相关的知识,希望对你有一定的参考价值。

参考技术A 网络爬虫技术,又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。 参考技术B 爬虫技术即网络爬虫,是一种自动获取网页内容的程序。是搜索引擎的重要组成部分,因此搜索引擎优化很大程度上就是针对爬虫而做出的优化。网络爬虫为搜索引擎从万维网下载网页。一般分为传统爬虫和聚焦爬虫。
传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。通俗的讲,也就是通过源码解析来获得想要的内容。
聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。

python爬虫是啥

参考技术A Python爬虫是指在某种原因进行互联网请求获取信息 参考技术B

首先要知道python爬虫是一个程序,这个程序的目的就是为了抓取万维网信息资源,比如你日常使用的谷歌等搜索引擎,搜索结果就全都依赖爬虫来定时获取

了解一个python爬虫离不开了解一下爬虫的基本原理,接下来我们来讲解一下这个原理。

网页请求的过程分为两个环节:

1. Request (请求):每一个展示在用户面前的网页都必须经过这一步,也就是向服务器发送访问请求。

2. Response(响应):服务器在接收到用户的请求后,会验证请求的有效性,然后向用户(客户端)发送响应的内容,客户端接收服务器响应的内容,将内容展示出来,就是我们所熟悉的网页请求,如图 所示。



网页请求的方式也分为两种:

1. GET:最常见的方式,一般用于获取或者查询资源信息,也是大多数网站使用的方式,响应速度快。

2. POST:相比 GET 方式,多了以表单形式上传参数的功能,因此除查询信息外,还可以修改信息。


所以,在写爬虫前要先确定向谁发送请求,用什么方式发送。

爬虫的目标对象也很丰富,不论是文字、图片、视频,任何结构化非结构化的数据爬虫都可以爬取,爬虫经过发展,也衍生出了各种爬虫类型:

    通用网络爬虫:爬取对象从一些种子 URL 扩充到整个 Web,搜索引擎干的就是这些事

    垂直网络爬虫:针对特定领域主题进行爬取,比如专门爬取小说目录以及章节的垂直爬虫

    增量网络爬虫:对已经抓取的网页进行实时更新

    深层网络爬虫:爬取一些需要用户提交关键词才能获得的 Web 页面

    不想说这些大方向的概念,让我们以一个获取网页内容为例,从爬虫技术本身出发,来说说网页爬虫,步骤如下:

    模拟请求网页资源

    从HTML提取目标元素

    数据持久化

    什么是爬虫,这就是爬虫:

    """让我们根据上面说的步骤来完成一个简单的爬虫程序"""

    import requests

    from bs4 import BeautifulSoup

    target_url = 'http://www.baidu.com/s?wd=爬虫'

    # 第一步 发起一个GET请求

    res = requests.get(target_url)

    # 第二步 提取HTML并解析想获取的数据 比如获取 title

    soup = BeautifulSoup(res.text, "lxml")

    # 输出 soup.title.text

    title = soup.title.text

    # 第三步 持久化 比如保存到本地

    with open('title.txt', 'w') as fp:
      

    fp.write(title)

    加上注释不到20行代码,你就完成了一个爬虫,简单吧

你就能精通 Python,成为未来抢手的人才。

python新手入门知识

python交流圈

以上是关于爬虫技术是啥的主要内容,如果未能解决你的问题,请参考以下文章

闲聊网络爬虫技术

网络爬虫是啥?具体要学哪些内容?

python爬虫模拟登录是啥意思

python中的scrapy是啥意思a?

python爬虫爬到一定的数据后出现404 not found是啥原因

反爬虫技术与“反”反爬虫技术