当前位置: 首页 > news >正文

一语道破爬虫,来揭开爬虫面纱

目录

一、爬虫(网络蜘蛛(Spider))

1.1、是什么:

1.2、学习的原因

1.3、用在地方:

1.4、是否合法:

1.5、后果

案例:

二、应用领域

三、Robots协议

四、抓包

4.1、浏览器抓包

4.2、抓包工具

常见的抓包工具:

五、思维导图总结


一、爬虫(网络蜘蛛(Spider))

1.1、是什么:

网络蜘蛛:互联网是张网,可以在网上走来走去

网络爬虫就是自动的从网络上获取数据的程序【模拟客户端浏览器】

1.2、学习的原因

好吃:有数据才能进行数据分析【大数据分析】

能从网络上爬取什么:浏览网站时所能看见的数据都可以通过爬虫程序保存下来、文字、图片、视频/音频

1.3、用在地方:

数据展示----------将爬取的数据展示到网页或者APP上,比如:百度新闻、今日头条,

数据分析-----------从数据中寻找一些规律,比如:慢慢买(价格对比)、TIOBE排行等

1.4、是否合法:

网络爬虫的约束---------Robots协议、约束网络爬虫程序的速度(一秒发出一千个请求)

1.5、后果

要么封账号要么封ip(换ip----换电脑,网上有ip池,花钱买),严重的坐牢

案例:

爬虫禁区1:

为违法违规组织提供爬虫相关服务 (验证码识别服务贩卖SEO......)

  • 知乎某极验破解者自述被抓 
  • “快啊答题”AI破解验证码服务开发者被判刑
  • 永嘉警方揪出“黑”百度黑客团伙 千扰搜索引擎牟利超七千万元


爬虫禁区2: 个人隐私数据抓取与贩卖

  • 简历大数据公司“5达科技”被一锅端
  • 社保掌上通被下架 用户的信息很容易泄露太不安全了
  • 爬虫为何受关注? 业内: 大数据服务商或因合作方涉套路贷犯罪而被牵连

爬虫禁区3:利用无版权的商业数据获利

  • “车来了”涉嫌偷数据被警方立案
  • 裁判文书网数据竟被售卖: 爬虫程序抓取 或成侵权

二、应用领域

2.1、区分Python与爬虫

Python 不是爬虫,而是一种编程语言。然而,Python 在爬虫领域中有着广泛的应用。许多人选择使用 Python 来编写网络爬虫,因为它有许多强大的库和工具,如 Requests、Beautiful Soup、Scrapy 等,可以帮助开发者轻松地编写和管理爬虫程序。

因此,虽然 Python 本身不是爬虫,但它是一种非常适合用于编写爬虫的编程语言,可以帮助开发者快速、高效地创建各种类型的网络爬虫。

Python

是一种功能强大且灵活的编程语言,因此在各种领域都有广泛的应用。以下是 Python 的一些主要应用领域:

1. Web 开发:Python 可以用于开发 Web 应用程序和网站,常用的 Web 框架包括 Django 和 Flask。

2. 数据科学和机器学习:Python 在数据科学和机器学习领域非常流行,因为有许多强大的库和工具,如 NumPy、Pandas、SciPy、scikit-learn 和 TensorFlow。

3. 自动化和脚本编写:Python 可以用于编写自动化脚本,包括系统管理、文件操作、数据处理等。

4. 科学计算和工程:Python 在科学计算和工程领域有广泛的应用,因为它可以处理复杂的数学计算和科学建模。

5. 游戏开发:Python 可以用于开发游戏,有一些流行的游戏引擎如 Pygame 和 Panda3D。

6. 网络编程:Python 在网络编程方面有着良好的支持,可以用于开发网络应用和服务器端程序。

7. 数据库:Python 有许多库可以用于与各种数据库进行交互,如 MySQL、PostgreSQL 和 MongoDB。

8. GUI 应用程序:Python 可以用于开发图形用户界面(GUI)应用程序,如使用 Tkinter、PyQt 和 wxPython 等库。

总的来说,Python 在各种领域都有广泛的应用,因此是一种非常流行的编程语言。

爬虫:
1. 搜索引擎:爬虫被用于搜索引擎的抓取和索引网页内容,以便用户可以通过搜索引擎找到相关的信息。
2. 数据挖掘:爬虫可以用于从网页上抓取大量的数据,然后进行分析和挖掘,以发现有用的信息和趋势。
3. 价格比较和商品信息收集:爬虫可以用于抓取不同网站上的商品信息和价格,以便用户可以比较不同产品的价格和特性。
4. 网络安全:爬虫可以用于发现和分析网站上的安全漏洞和恶意软件,以帮助提升网络安全。
5. 社交媒体分析:爬虫可以用于抓取社交媒体上的信息和数据,以进行用户行为分析和趋势预测。
6. 舆情监控:爬虫可以用于监控新闻网站、论坛和社交媒体上的舆情信息,以帮助政府和企业了解公众舆论。
7. 金融市场分析:爬虫可以用于抓取金融市场上的数据和信息,以进行趋势分析和预测。
8. 学术研究:爬虫可以用于抓取学术文献和研究成果,以帮助研究人员进行文献综述和数据分析。

三、Robots协议

是网站管理和网络爬虫开发者之间的一种合作方式/君子协议(说白了就是给你看的,网站自己会做反爬手段),有效地管理网络爬虫对网站的访问,保护网站内容的安全性和合法性。

在网站后面加/robots.txt就可以看见那些可以爬那些不可以爬

Disallow:禁止爬

Allow:允许爬

四、抓包

抓包(Packet Capture)是指通过软件工具捕获和分析计算机网络中传输的数据包。抓包通常用于网络分析、安全审计、故障排除和网络性能优化等目的。

简单说明:电脑当前连了网,我们要和另外一台电脑通讯,通讯过程中发送的数据,是以包来发送的

4.1、浏览器抓包

右键---->检查(快捷键:F12)

4.2、抓包工具

可以截取经过计算机网络接口的数据包,并将其保存到文件中供后续分析。这些数据包可以包含从源到目的地的所有通信内容,包括通信双方的IP地址、端口号、协议类型、数据内容等信息。通过分析这些数据包,可以深入了解网络通信的细节,发现潜在的安全问题、网络瓶颈或者通信异常。

抓包工具通常可以在本地计算机上运行,也可以在网络设备上运行。

常见的抓包工具:

Wireshark、tcpdump、Fiddler、Charles等。这些工具提供了丰富的功能,可以对抓取到的数据包进行过滤、分析和可视化展示,帮助网络管理员和安全专家进行网络监控和问题排查。

伪基站就假的网络

五、思维导图总结

相关文章:

一语道破爬虫,来揭开爬虫面纱

目录 一、爬虫(网络蜘蛛(Spider)) 1.1、是什么: 1.2、学习的原因 1.3、用在地方: 1.4、是否合法: 1.5、后果 案例: 二、应用领域 三、Robots协议 四、抓包 4.1、浏览器抓包 4.2、抓包工具 常见…...

时序分解 | Matlab实现贝叶斯变化点检测与时间序列分解

时序分解 | Matlab实现贝叶斯变化点检测与时间序列分解 目录 时序分解 | Matlab实现贝叶斯变化点检测与时间序列分解效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现贝叶斯变化点检测与时间序列分解 1.Matlab实现贝叶斯变化点检测与时间序列分解,完…...

Python 操作 MySQL:使用 mysql-connector-python 操作 MySQL 数据库

大家好,我是水滴~~ 当涉及到使用 Python 操作 MySQL 数据库时,mysql-connector-python 库是一个强大而常用的选择。该库提供了与 MySQL 数据库的交互功能,使您能够执行各种数据库操作,如连接数据库、执行查询和插入数据等。在本文…...

虚拟化技术和云计算的关系

1、云计算底层就是虚拟化技术。 (1)常见的虚拟化技术:VMware(闭源的,需要收费)、XEN、KVM (2)大部分公司用的虚拟化方案:XEN、KVM 2、虚拟化的历史 (1&am…...

【privateGPT】使用privateGPT训练您自己的LLM

了解如何在不向提供商公开您的私人数据的情况下训练您自己的语言模型 使用OpenAI的ChatGPT等公共人工智能服务的主要担忧之一是将您的私人数据暴露给提供商的风险。对于商业用途,这仍然是考虑采用人工智能技术的公司最大的担忧。 很多时候,你想创建自己…...

权威Scrum敏捷开发企业培训分享

课程简介 Scrum是目前运用最为广泛的敏捷开发方法,是一个轻量级的项目管理和产品研发管理框架。 这是一个两天的实训课程,面向研发管理者、项目经理、产品经理、研发团队等,旨在帮助学员全面系统地学习Scrum和敏捷开发, 帮助企业快速启动敏…...

面试要点,算法,数据结构等练习大全

有趣的算法,面试常常碰到,多种语言实现~ 1 从数组中找出两个数字使得他们的和是给定的数字 tags: #hash 使用一个散列,存储数字和他对应的索引。然后遍历数组,如果另一半在散列当中,那么返回 这两个数的索引&#x…...

八皇后问题(C语言)

了解题意 在一个8x8的棋盘上放置8个皇后,使得任何两个皇后都不能处于同一行、同一列或同一斜线上。问有多少种方法可以放置这8个皇后? 解决这个问题的目标是找到所有符合要求的皇后摆放方式,通常使用回溯算法来求解。回溯算法会尝试所有可能…...

利用网络教育系统构建个性化学习平台

在现代教育中,网络教育系统作为一种创新的学习方式,为学生提供了更加个性化和灵活的学习体验。在本文中,我们将通过简单的技术代码,演示如何构建一个基础的网络教育系统,为学生提供个性化的学习路径和资源。 1. 环境…...

滤波器opencv

在OpenCV中,滤波器用于对图像进行平滑、锐化、边缘检测等操作。以下是一些常用的滤波器及其在OpenCV中的Python代码示例: 均值滤波器(平滑图像): import cv2 import numpy as np# 读取图像 image cv2.imread(path_t…...

使用 Docker Compose 部署 Halo 2.x 与 MySQL

使用 Docker Compose 部署 Halo 2.x 与 MySQL 本文主要介绍使用 Docker Compose 部署 Halo 2.x 和 MySQL, 主要针对小白。 有一定基础的, 可以直接去官网查看。 博主博客 https://blog.uso6.comhttps://blog.csdn.net/dxk539687357 一、Docker 与 Dock…...

openGauss学习笔记-179 openGauss 数据库运维-逻辑复制-发布订阅

文章目录 openGauss学习笔记-179 openGauss 数据库运维-逻辑复制-发布订阅179.1 发布179.2 订阅179.3 冲突处理179.4 限制179.5 架构179.6 监控179.7 安全性179.8 配置设置179.9 快速设置 openGauss学习笔记-179 openGauss 数据库运维-逻辑复制-发布订阅 发布和订阅基于逻辑复…...

2023十大编程语言及未来展望

2023十大编程语言及未来展望 1. 2023年十大编程语言排行榜2. 十大编程语言未来展望PythonCCJavaC#JavaScriptPHPVisual BasicSQLAssembly language 1. 2023年十大编程语言排行榜 TIOBE排行榜是根据互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎&a…...

Docker启动各种服务

文章目录 1 启动MySQL2 启动maven,用于编译java程序3 容器内启动sshd,用于远程编码和调试 1 启动MySQL 守护方式运行一个容器: docker run --name mysql5.7 -e MYSQL_ROOT_PASSWORD123456 -p 3307:3306 -d mysql进入容器: dock…...

AndroidR集成三方Native服务组件

一、背景 该项目为海外欧盟市场版本,需集成三方IDS安全组件,进程运行时注入iptables指令至链表,检测网络运行状态,并收集异常日志并压缩打包成gz文件,提供给Android上层应用上报云端。 二、分析 1、将提供的组件包集成至系统vendor分区 /vendor/bin/idsLogd/vendor/li…...

C++连接数据库(DataBase)之加载外部依赖项

文章目录 在VS中进行配置一、 先找到VS的解决方案资源管理器:二、 找到“属性”,进行附加项配置三、 移植libmysql.dll目录 在VSCode中进行配置依赖文件的移动库文件的移动可能遇到的问题 重点!!!!&#xf…...

论文阅读——Slide-Transformer(cvpr2023)

Slide-Transformer: Hierarchical Vision Transformer with Local Self-Attention 一、分析 1、改进transformer的几个思路: (1)将全局感受野控制在较小区域,如:PVT,DAT,使用稀疏全局注意力来…...

【Flink-Kafka-To-Mysql】使用 Flink 实现 Kafka 数据写入 Mysql(根据对应操作类型进行增、删、改操作)

【Flink-Kafka-To-Mysql】使用 Flink 实现 Kafka 数据写入 Mysql(根据对应操作类型进行增、删、改操作) 1)导入依赖2)resources2.1.appconfig.yml2.2.application.properties2.3.log4j.properties2.4.log4j2.xml 3)uti…...

SpringMVC学习与开发(四)

注&#xff1a;此为笔者学习狂神说SpringMVC的笔记&#xff0c;其中包含个人的笔记和理解&#xff0c;仅做学习笔记之用&#xff0c;更多详细资讯请出门左拐B站&#xff1a;狂神说!!! 11、Ajax初体验 1、伪造Ajax 结果&#xff1a;并未有xhr异步请求 <!DOCTYPE html> &…...

odoo17核心概念view7——listview总体框架分析

这是view系列的第七篇文章&#xff0c;今天主要介绍我们最常用的list视图。 1、先看list_view,这是主文件 /** odoo-module */import { registry } from "web/core/registry"; import { RelationalModel } from "web/model/relational_model/relational_mode…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题&#xff1a; 下面创建一个简单的Flask RESTful API示例。首先&#xff0c;我们需要创建环境&#xff0c;安装必要的依赖&#xff0c;然后…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

ESP32读取DHT11温湿度数据

芯片&#xff1a;ESP32 环境&#xff1a;Arduino 一、安装DHT11传感器库 红框的库&#xff0c;别安装错了 二、代码 注意&#xff0c;DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子&#xff0c;再用 CNN-BiLSTM-Attention 来动态预测每个子序列&#xff0c;最后重构出总位移&#xff0c;预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵&#xff08;S…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...