【网络爬虫技术】(1·绪论)

news2025/2/24 22:24:15

🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀网络爬虫开发技术入门_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 

目录

1. 爬虫是什么

1.1 网络爬虫思想本质

1.2 网络爬虫核心

1.3 爬虫的用途 

​1.4 爬虫分类

1.4.1 通用爬虫

1.4.2 聚集爬虫

2. 反爬手段

总结


1. 爬虫是什么

网络爬虫,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本

网络爬虫还有许多其他的名字:

  • Crawler
  • Spider
  • Robot
  • Web agent
  • Wanderer
  • worm

这里面我最喜欢worm和spider

所以我后面的所有代码文件的命名都将采用这两个作为名字 

1.1 网络爬虫思想本质

网络爬虫获取网页信息本质上和人类获取网络信息是相同的思想

只不过爬虫能够自动化、快速化地多次重复完成人类的行为

人类浏览网络流程:

爬虫:伪装成人类向服务器发出请求,并获取服务器的返回信息

1.2 网络爬虫核心

  1. 爬取网页:爬取整个网页包含了网页中所有得内容
  2. 解析数据:将网页中你得到的数据进行解析(在大量数据中查找自己所想要的数据)
  3. 难点:爬虫和反爬虫之间的博弈

1.3 爬虫的用途 

  • 数据分析/人工数据集
  • 社交软件冷启动
  • 舆情监控
  • 竞争对手监控

社交软件冷启动:并没有真正存在人,而是从微博等地方获取个人信息,制造出假用户。从而来实现冷启动(引流)

出行:很多购票网站会去爬取12306,去爬12306的票,并将这个票用来自己售卖从而获取利润收入

1.4 爬虫分类

分为通用爬虫和聚焦爬虫,其中我们要学习和使用的是聚焦爬虫

1.4.1 通用爬虫

通用爬虫:

实例:

百度、360、google、sougou等搜索引擎‐‐‐伯乐在线

爬虫是搜索引擎用来收集互联网上网页信息的程序,是搜索引擎的一部分

它们按照预定的算法遍历网页并将内容抓取到搜索引擎的数据库中

搜索引擎的爬虫功能:

访问网页‐>抓取数据‐>数据存储‐>数据处理‐>提供检索服务

robots协议:

一个约定俗成的协议,添加robots.txt文件,来说明本网站哪些内容不可以被抓取,起不到限制作用 自己写的爬虫无需遵守

商用爬虫获取数据要遵循这个协议,不然被爬公司可以告你;

自己爬着玩随便爬的,这个协议就是一个txt文件,没有强制的限制作用

网站排名(SEO):

1. 根据pagerank算法值进行排名(参考个网站流量、点击率等指标) 2. 百度竞价排名

缺点:

1. 抓取的数据大多是无用的 2.不能根据用户的需求来精准获取数据

1.4.2 聚集爬虫

功能:

根据需求,实现爬虫程序,抓取需要的数据

设计思路:

1.确定要爬取的url

  • 如何获取Url

2.模拟浏览器通过http协议访问url,获取服务器返回的html代码

  • 如何访问

3.解析html字符串(根据一定规则提取需要的数据)

  • 如何解析

2. 反爬手段

  1. User‐Agent: User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。     
  2. 代理IP: 西次代理、快代理 、高匿名、匿名和透明代理。1.使用透明代理,对方服务器可以知道你使用了代理,并且也知道你的真实IP。2.使用匿名代理,对方服务器可以知道你使用了代理,但不知道你的真实IP。3.使用高匿名代理,对方服务器不知道你使用了代理,更不知道你的真实IP。        
  3. 验证码访问:利用打码平台:1、云打码平台;2、超级🦅
  4. 动态加载网页:网站返回的是js数据 并不是网页的真实数据 ——selenium驱动真实的浏览器发送请求    
  5. 数据加密:分析js代码

总结

如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~ 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1954189.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言】两个数组比较详解

目录 C语言中两个数组比较详解1. 逐元素比较1.1 示例代码1.2 输出结果1.3 分析 2. 内置函数的使用2.1 示例代码2.2 输出结果2.3 分析 3. 在嵌入式系统中的应用3.1 示例代码3.2 输出结果3.3 分析 4. 拓展技巧4.1 使用指针优化比较4.2 输出结果4.3 分析 5. 表格总结6. 结论7. 结束…

yolov8 训练模型

一、准备数据 1.1 收集数据 以拳皇为例,将录制的游戏视频进行抽帧。 import cv2 import os# 视频文件路径 video_path 1.mp4# 输出帧的保存目录 output_dir ./output_frames os.makedirs(output_dir, exist_okTrue)# 读取视频 cap cv2.VideoCapture(video_pa…

7-25学习笔记

一、锁对象 Lock接口 1、创建锁对象 ReentrantLock类 Lock locknew ReentrantLock(true); 默认创建的是非公平锁 在创建锁对象时传入一个true参数 便会创建公平锁 先来后到 是重入锁 排他锁 加锁后不允许其它线程进入 2、加锁、解锁 (1)loc…

服务器搭建总结

服务器搭建好初期要记得开放端口,配置安全组 ,主要的有22,80,3389,8888等,宝塔连接的端口在8888上,不开放无法连接 由于时使用的腾讯云服务器,所以在宝塔选择上使用了Windows的面板…

Autodesk Revit v2025 激解锁版下载及安装教程 (三维建模软件)

前言 Revit是欧特克公司知名的三维建模软件,是建筑业BIM体系中使用最广泛的软件之一,其核心功能是三维建筑模型参数化设计、渲染效果图、算量,土建建模、机电建模、用来帮助工程师在施工前精确模拟阶段。 一、下载地址 下载链接&#xff1…

消息摘要算法:MD5加密

🌟 主题简介 今天,我们将深入探讨一种经典且广泛应用的加密算法——MD5。通过案例形式了解其原理、实现方法及注意细节。无论你是Python爱好者还是JavaScript高手,这篇内容都将为你揭开MD5的神秘面纱。 📚 内容介绍 MD5&#xf…

大话成像公众号文章阅读学习(一)

系列文章目录 文章目录 系列文章目录前言一、扫射拍摄二、索尼Alpha 9 III2.1. 视频果冻效应2.2 闪光灯同步速度2.3 其他功能 三 A9III 局限性总结 前言 大话成像是一个专注成像的公众号,文章都很好。 今天看的这篇是 特朗普遭枪击后“大片”出自它 文章地址 htt…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《考虑电动汽车动态拥堵的配电网灵活性资源双层优化调度 》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

揭秘企业为何钟情定制红酒:品牌形象与不同的礼品的双重魅力

在商务世界的广阔天地里,红酒不仅仅是一种饮品,更是一种传递情感、展示品味的不同媒介。近年来,越来越多的企业开始钟情于定制红酒,其中洒派红酒(Bold & Generous)通过其品质和个性化的定制服务&#x…

深入源码:解析SpotBugs (4)如何自定义一个 SpotBugs plugin

自定义一个 spotbugs 的插件,官方有比较详细的说明: https://spotbugs.readthedocs.io/en/stable/implement-plugin.html 本篇是跟随官网demo的足迹,略显无聊,可跳过。 创建工程 执行maven 命令 mvn archetype:generate -Darche…

关于Jenkins自动化部署Maven项目:

jenkins介绍: Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。 jenkins作用:更好的利于测试工程师测试项目(自动部署) 安装je…

游戏UI设计大师课:3款游戏 UI 设计模板

很多时候,做设计需要找素材。假如是普通的 UI 界面或者 Banner 等等,在Dribbble、Pinterest、即时设计、Behance 翻看这样的网站,至少可以梳理出一些想法和思路。如果你需要一个更规范的指南,此时,在各种设计规范、官方…

【网络安全】AWS S3 Bucket配置错误导致敏感信息泄露

未经许可,不得转载。 文章目录 前言技术分析正文 前言 AWS(Amazon Web Services)是亚马逊公司提供的一个安全的云服务平台,旨在为个人、公司和政府机构提供计算能力、存储解决方案、内容交付和其他功能。作为全球领先的云服务提供…

electron调试

electron 调试 electron 的调试分两步,界面的调试,和主进程的调试。 界面调试类似浏览器F12,可是调试不到主进程。 主进程调试有vscode、命令行提示和外部调试器调试。 本篇记录的练习是vscode调试。命令行和外部调试器的方式可以参考官网&a…

模拟实现c++中的vector模版

目录 一vector简述: 二vector的一些接口函数: 1初始化: 2.vector增长: 3vector增删查改: 三vector模拟实现部分主要函数: 1.size,capacity,empty,clear接口: 2.reverse的实现&#xff1…

青少年科普平台-计算机毕业设计源码76194

摘 要 对于搭建一个青少年科普平台,您可以考虑使用Spring Boot作为后端框架。Spring Boot是一个能够简化Spring应用开发的框架,能够帮助您快速搭建稳定、高效的后端服务。您可以利用Spring Boot的特性来构建一个可靠的数据服务,用于展示和传播…

docker镜像下载

1、搜索镜像 [rootlocalhost ~]# docker search ubuntu 2、下载ubuntu系统镜像(容器架构与宿主机相同) [rootlocalhost ~]# docker pull ubuntu #选择stars值最高镜像下载,默认为latest版 [rootlocalhost ~]# docker images 3、查看镜像支持的架构 [rootlocalh…

1143. 最长公共子序列(详细版)

目录 dp解法: 1.状态代表什么: 2. 状态转移方程 3.初始化 3. so为什么要这样? 代码实现: 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0…

protobuf2.5升级protobuf3.14.0

这个升级搞得心力憔悴,我VS2010升级到了VS2017,所有的库都要编译一下,想着顺便把其他的三方库也升级了。搞了好几天,才升级完,因为不仅要搞windows还要搞linux版本各种库的升级。hpsocket的升级,jsoncpp的升…

stm32h7串口发送寄存器空中断

关于stm32串口的发送完成中断UART_IT_TC网上资料挺多的,但是使用发送寄存器空中断UART_IT_TXE的不太多 UART_IT_TC 和 UART_IT_TXE区别 UART_IT_TC 和 UART_IT_TXE 是两种不同的 UART 中断源,用于表示不同的发送状态。它们的主要区别如下: …