爬虫

简介: 该文介绍了爬虫的基础知识,包括爬虫的定义(通过编程模拟浏览器抓取网络数据)、价值(实际应用和就业需求)、法律地位(合法但有违法风险,分为善意和恶意爬虫)以及可能带来的风险(影响网站运营和触犯法律)。为避免问题,建议优化程序、审查抓取内容。爬虫类型包括通用、聚焦和增量式爬虫。文中还提到了反爬与反反爬策略,以及robots.txt协议作为网站数据爬取的君子协定。此外,讨论了HTTP协议(包括User-Agent和Connection)和HTTPS协议的安全性及加密方式。

爬虫基础简介


什么是爬虫:

       --- 通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程


爬虫的价值:

       ---实际应用

       ---就业


爬虫究竟是合法还是违法的?

---在法律中是不被禁止的

---具有违法风险

---善意爬虫   恶意爬虫


爬虫带来的风险可以体现在如下两个方面:

   ---爬虫干扰了被访问网站的正常运营

   ---爬虫抓取了收到法律保护的特定类型的数据或信息


如何在使用编写爬虫的过程中避免进入局子的厄运呢?

   ---时常优化自己的程序,避免感染被访问网站的正常运行

   ---在使用,传播爬取到的数据时间,审查抓取到的内容,如果发现了涉及到用户隐私,商业机密等敏感内容需要及时停止爬取或传播



爬虫在使用场景中的分类

       一 通用爬虫:

                   抓取系统重要的组成部分,抓取的是一整张页面的数据

       一 聚焦爬虫

                   是建立在通用爬虫的基础之上抓取的是页面中特定的局部内容

       一 增量式爬虫

                    检测网站中数据更新的情况。只会抓取网站中最新更新出来的数据。


爬虫的矛与盾


反爬机制

   门户网站,可以通过制定相应的策略或者技术手段,阻止爬虫程序进行网站数据的爬取

反反爬策略

   爬虫程序可以通过制定相应的策略或者技术手段,破解门户网站中具备的反爬机制 ,从而获取门户网站数据


robots.txt协议:

   君子协议。规定了网站中哪些数据可以被爬虫爬取,哪些数据不可以被爬取。

   网站地址+robots.txt    例如:https://www.bilibili.com/robots.txt


http协议

   一 概念:就是服务器和客户端进行数据交互的一种形式

常用请求头信息:

   一 User-Agent :请求载体的身份标识

例如:user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36

   一 Connection:请求完毕后,式断开连接还说保持连接


常用响应头信息:

   一 Content-Type:服务器响应回客户端的数据类型


https协议:

   一 安全的超文本传输(http)协议

加密方式:

   一 对称密钥加密

   一 非对称密钥加密

   一 证书密钥加密


相关文章
|
8天前
|
数据采集 JavaScript 前端开发
爬虫与反爬虫
本文介绍了爬虫与反爬虫的基本概念。爬虫是自动抓取互联网信息的程序,通常使用HTTP请求和解析技术获取数据。反爬虫技术包括验证码、User-Agent检测、IP限制、动态加载和数据接口限制等,用于阻止或限制爬虫访问。开发者需了解这些反爬虫策略,并采取相应措施应对。同时,网站运营者在实施反爬虫时也应考虑用户体验。
|
5月前
|
数据采集 搜索推荐 数据挖掘
爬虫应用
爬虫应用
33 2
|
8月前
|
数据采集 数据安全/隐私保护 索引
爬虫学习
爬虫学习
|
数据采集 存储 JSON
一文学会爬虫技巧
作为冷数据启动和丰富数据的重要工具,爬虫在业务发展中承担着重要的作用,我们业务在发展过程中积累了不少爬虫使用的经验,在此分享给大家,希望能对之后的业务发展提供一些技术选型方向上的思路,以更好地促进业务发展
一文学会爬虫技巧
|
数据采集 存储 机器学习/深度学习
爬虫系列:爬虫介绍
在大数据深入人心的时代,网络数据采集作为网络、数据库与机器学习等领域的交汇点,爬虫技术已经成为满足个性化网络数据需求的最佳实践。
247 0
爬虫系列:爬虫介绍
cxa
|
数据采集 Python
一个爬虫小技巧
一个爬虫小技巧
cxa
1168 0
|
Web App开发 数据采集 JavaScript
爬虫问题总结
本文档对日常学习中用 python 做数据爬取时所遇到的一些问题做简要记录,以便日后查阅,部分问题可能因为认识不到位会存在一些误解,敬请告知,万分感谢,共同进步。 估算网站规模 该小节主要针对于整站爬取的情况。
1790 0
|
数据采集 Java 索引
gecco爬虫
http://www.geccocrawler.com/intro/ Gecco是一款用java语言开发的轻量化的易用的网络爬虫,不同于Nutch这样的面向搜索引擎的通用爬虫,Gecco是面向主题的爬虫。
946 0
|
数据采集 移动开发 C#
|
数据采集 前端开发 数据格式