爬虫的一些基本知识(1)

1.网络爬虫概述 一、爬虫是什么? 二、爬虫可以做什么? 三、爬虫开发中有哪些技术? 阅读详情
  1. 完成一个爬虫的制作的基本过程

  • 分析需求:就是我们需要在网页中爬取什么内容。
  • 分析网站:根据需求在网站上找到相应的资源。
  • 获取源码:requests包来获取,注意返回的response的各个属性的类型、编码。
  • 匹配资源:用正则表达式匹配目的资源的url。
  • 存储资源:将获取的资源以正确的格式存放。
   2. 与爬虫有关的基础知识

  • 正则表达式
  1. 正则表达式的基本符号
      • ^ :必须以 ^ 之后的字符为开头,如 ^a 表示必须以a为开头。
      • $ :必须以 $ 之前的字符为结尾,如 3$ 表示必须以数字3为结尾。
      • .  :代表任意字符,换行符除外,若后面加入re.S则也能代表换行符。
      • * :表示 * 之前的字符可以重复任意多次。+ :表示 + 前面的字符可以重复至少一次
      • + :表示 + 之前的字符可以重复至少一次。
      • ? :匹配前面的字符0或1次,也表示非贪婪模式。一般跟 .*? 组合使用。
      • {x} :表示限定该符号之前的字符可以重复的次数为 x 次
      • {x,} :表示限定该符号之前的字符可以重复的次数大于等于x次。
      • {x,y} :表示限定该符号之前的字符可以重复的次数为大于等于 x 次而小于等于 y 次。
      • |  :表示或,用于有多种表示方式的时候,如 a|b 表示可能出现a,b两种情况,任意一个满足即可匹配。
      • [ ] :表示 [ ] 内的内容任意一个满足即可匹配。
      • \ : 将普通字符转化为特殊字符或者解除特殊字符的功能。
      • \s :代表空格。
      • \S :代表非空格。
      • \w :代表匹配任意Unicode字符。
      • \W :不为 \w 即可。
      • \d :代表数字
      • [\u4E00-\u9FA5] :代表汉字,如果要匹配一串汉字,则中间不能有空格。
      • ( ) :作为子内容提取,一般我们需要留下的内容要放到括号里,比如我们要从一串字符串中提取数字,则(\d+)
     2.贪婪模式与非贪婪模式

  • 贪婪模式:匹配尽可能多的字符,不声明的情况下默认为贪婪模式。
  • 非贪婪模式:匹配尽可能少的字符。
编码格式

     ASCII

    计算机存放数据以及处理数据都是用的二进制0和1,所以最先出现的编码格式为ASCII码,该码只能表示128个字符

    GB2312

    用ASCII编码处理中文是不够的,因为中文有6000多个汉字,于是中国在ASCII编码的基础上进行了扩展制定了GB2312编码,用两个字节表示一个汉字。

    GBK

    是对GB2312编码的简单扩展。

    GB18030

    由于中国是多民族国家,许多民族有其自己的文字,所以在GB2312的基础上进行了扩展,制定了GB18030编码。

    Unicode

    由于世界上的每个国家都制定了自己的编码标准,所以ISO为了方便,制定了Unicode编码(字符集),将全世界上的所有符号都放了进来,Unicode为定长编码,采用的是16位比特编码。

    UTF

    这样有可能浪费内存资源,于是UTF编码出现了,采用每次用8位或者16位比特进行传输,分别为UTF-8和UTF-16


encode( )跟decode( )方法
    这两个函数都是字符串的函数,字符串在python中是用Unicode编码的,所以在做编码转换的时候,要将Unicode作为中间编码,先将其他编码decode成Unicode编码,再将Unicode编码encode成目标编码

decode( ) : 将其他类型的编码转换成Unicode编码。如str1.decode('gb2312') 表示将gb2312类型编码的字符串解码为Unicode类型。

encode( ) : 将Unicode类型的编码编码成其他类型的编码。入str1.encode('gb2312') 表示将Unicode类型的字符串str1编码为gb2312

  • requests包

  • requests.get(url,params) :最常用的一个方法,获取网页源代码,返回一个response对象,该对象里面有多种属性,state_code,url,content,headers等等,可以调用显示。

暂且整理这部分基础知识。
爬虫基础(1)什么是网络爬虫 文章目录一. 认识网络爬虫二. 网络爬虫的组成三. 网络爬虫的类型1. 通用网络爬虫2. 聚焦网络爬虫3. 增量式网络爬虫4. 深层网络爬虫(1)静态网页(2)深层页面和表层页面(3)网络爬虫表单填写四. 网络爬虫的用途 一. 认识网络爬虫 说起网络爬虫,人们常常会用这样一个比喻:如果把互联网比喻成一张网,那么网络爬虫就可以认为是一个在网上爬来爬去的小虫子,它通过网页的链接地址来寻找网页,通过特定的搜索算法来确定路线,通常从网站的某一个页面开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地 阅读详情

相关推荐

【基础】【Python网络爬虫】【1.认识爬虫】什么是爬虫,爬虫分类,爬虫可以做什么

认识爬虫 1.什么是爬虫 2.爬虫可以做什么 3.为什么用 Ptyhon 爬虫 4.爬虫的分类 通用爬虫 聚焦爬虫 功能爬虫 增量式爬虫 分布式爬虫 5.爬虫的矛与盾(重点) 6.盗亦有道的君子协议robots 7.爬虫合法性探究

weixin_43612602的博客 2531

爬虫--结语

基础 结语 爬虫基础部分资料更新与学习已经完成,有疑问的小伙伴可以留言或私聊我,下一步计划是学习与更新tensorflow的相关知识

Leon的博客 298

1-认识网络爬虫

​ 网络爬虫(Web Crawler)又称网络蜘蛛、网络机器人,它是一种按照一定规则,自动浏览万维网的程序或脚本。通俗地讲,网络爬虫就是一个模拟真人浏览万维网行为的程序,这个程序可以代替真人自动请求万维网,并接收从万维网返回的数据。与真人浏览万维网相比,网络爬虫能够浏览的信息量更大,效率也更高。

qwy715229258163的博客 1846

一小时学会Python3爬虫基础(四)完整解析格式化输出和数据类型转换

目录前言格式化输出格式化符号 %s格式化函数format格式化表示 f-string转义符和结束符\n意思就是“换行”new line\t 叫做水平制表符(tab),\r 是回车符carriage return结束符数据类型转换数据类型判断数据类型转换总结 前言 上回我们大概了解了变量和数据的类型,原本是要自己讲解这些类型的增、删、查、修、判断,但是在说这部分内容的时候,还有一些部分常规要用的内容没说,所以这回讲解一下格式化输出、转义符、结束符、数据转换的内容。 格式化输出 这里说到的格式化,大多情况下是.

不世人的博客 1168

网络爬虫

参考我的知乎专栏:网路爬虫 现在从网络爬虫的五个方面开始讲起,即定义,背景,原理,工具,实战。 一:网络爬虫定义 参考:百度百科网络爬虫定义 网络爬虫(又被称为网页蜘蛛,网络机器人,网页追逐者等),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,跟浏览器一样,是一个web客户端程序,如下图: 网络爬虫 二:网络爬虫背景 计算机网络本质上是一种传播工具,方便人们更好的相互交...

lcj200813138020的专栏 4726

什么是网络爬虫?有什么用?怎么爬?

随着大数据时代的来临,网络爬虫在互联网中的地位将越来越重要。互联网中的数据是海量的,如何自动高效地获取互联网中我们感兴趣的信息并为我们所用是一个重要的问题,而爬虫技术就是为了解决这些问题而生的。如果只是做搜索引擎,那么感兴趣的信息就是互联网中尽可能多的高质量网页;如果要获取某一垂直领域的数据或者有明确的检索需求,那么感兴趣的信息就是根据我们的检索和需求所定位的这些信息,此时,需要过滤掉一些无用信息。前者我们称为通用网络爬虫,后者我们称为聚焦网络爬虫。

m0_72282564的博客 1980

Python爬虫知识点总结(详解)

Python爬虫是使用Python编程语言编写的程序,用于自动化地获取互联网上的数据。它通过模拟浏览器的行为,发送HTTP请求并获取网页的HTML内容,然后从HTML中提取所需信息,并进行数据处理和存储。"requests"库是一个流行的第三方库,用于在Python中发送HTTP请求和处理响应。它提供了简洁而易于使用的API,使得与Web服务进行通信变得简单。requests库支持发送各种类型的HTTP请求,包括GET、POST、PUT、DELETE等。它提供了不同的方法(如。

m0_55933541的博客 1万+

Python爬虫编程思想(33):匹配字符串的起始和结尾以及单词边界

“^”符号用于表示匹配字符串的开始,“$”符号用于表示匹配字符串的结束,“\b”符号用于表示单词的边界。这里的边界是指单词两侧是空格或标点符号。例如“ abc?”可以认为abc两侧都有边界,左侧是空格,右侧是问号(?),但“ abcx”就不能认为abc右侧有边界,因为“x”和“abc”都可以认为是单词。 下面的例子演示了如何匹配字符串的起始和结束,以及单词边界的匹配。 import re # 匹配成功 m = re.search('^The', 'The end.') pri...

一个被知识诅咒的人 937

python爬虫必备的基本知识

网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做参考:http://c.biancheng.net/socket/什么是 Socket?Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯。三次握手 四次挥手包与包之间的交换 TCP 协议方法描述。

一切都是热爱的结果 3301

用Matlab机器人工具箱搞定六轴机械臂建模:从DH参数到3D可视化(附完整代码)

本文详细介绍了如何使用Matlab机器人工具箱进行六轴机械臂建模,从DH参数输入到3D可视化全流程解析。通过正运动学验证、逆运动学求解和交互控制等实战技巧,帮助工程师快速掌握机械臂建模核心方法,并提供完整代码示例解决常见问题。

weixin_27372101的博客 394

C# Code-Behind 技术全面解析

Code-Behind 是 ASP.NET Web Forms 中的一种技术模式,通过将用户界面标记(.aspx文件)与程序逻辑代码(.aspx.cs文件)分离,实现表现层与逻辑层的解耦。其核心思想是前端展示与后台逻辑的物理文件分离,通过ASP.NET编译器将两者合并编译成一个Page类并执行。Code-Behind 的优势包括较好的代码组织、较高的开发效率,尤其适合快速开发数据驱动应用。然而,与现代开发模式如ASP.NET MVC、ASP.NET Core和Blazor相比,Code-Behind 在可维

记录学习的过程 957

【爬虫基础】第1讲 网络爬虫基本知识 创建第一个爬虫程序

网络爬虫也叫网络蜘蛛,如果把互联网比喻成一个蜘蛛网,那么爬虫就是在网上爬来爬去的蜘蛛,爬虫程序通过请求url地址,根据响应的内容进行解析采集数据。

a272329874a的博客 1009

灰度重心法实战:从原理到MATLAB代码实现激光条纹中心线提取

本文详细介绍了激光条纹中心线提取的核心方法——灰度重心法。通过物理类比阐释其原理,并提供从图像预处理到MATLAB代码实现的完整实战教程。文章重点解析了算法流程、关键参数调整及常见问题避坑指南,帮助读者快速掌握这一机器视觉与三维测量中的基础且高效的技术。

cake8的博客 462

网络爬虫的基本知识(1)-- HTTP基本原理和web网页基础

在学习Python之前,我是学习SEO的,SEO就是搜索引擎优化,要做的工作呢,就是要了解搜索引擎背后的爬虫,了解爬虫的算法。 在接触了Python之后,我决定自己去学习一下爬虫的写法,做一只属于自己的“蜘蛛”。 1 爬虫可以做什么? 爬虫最基础的工作就是抓取网页。 比如我们打开百度的首页: 百度的首页就相当于是一个爬虫入口。在这个入口中有非常多的URL,而这些URL又相当于是子入口。在这些子入口的后面又是更多的URL。 2 爬虫是怎么工作的? 1、先选出一部分网页 以百度为例,我们先在搜索框中输入想要了

shirley1222的博客 800

Vue2项目实战:vue2-org-tree实现动态组织架构图

本文详细介绍了如何在Vue2项目中使用vue2-org-tree组件实现动态、可交互的组织架构图。内容涵盖从快速安装、基础渲染到核心功能实战,包括水平布局、节点展开折叠、响应式数据绑定、深度自定义节点内容以及事件处理。同时提供了性能优化、样式覆盖等避坑指南,并通过一个完整的企业级Demo展示了如何打造功能丰富的架构图,助力高效开发后台管理系统。

weixin_28040125的博客 522

集成calibre到cadence virtuoso环境中 load: can‘t access file - “/opt/eda/Mentor/lib/calibre.skl“

项目场景: 设想是将Calibre集成到cadence virtuoso中,但网上的解决办法尝试过在本机上实验都有点问题,因此想记录下来我的解决办法仅供参考。 问题描述: 安装好cadence, calibre之后打开virtuoso,CIW窗口显示 *Error* load: can't access file - "/opt/eda/Mentor/lib/calibre.skl" 问题是出在calibre.skl的加载路径出错,尝试网上的在工程目录下修改.cdsinit文件,添加calibre安装

weixin_52714276的博客 1万+

1.认识网络爬虫

1.认识网络爬虫 网络爬虫 爬虫的合法性 HTTP协议 请求与响应(重点) 网络爬虫 爬虫的全名叫网络爬虫,简称爬虫。他还有其他的名字,比如网络机器人,网络蜘蛛等等。爬虫就好像一个探测机器,它的基本操作就是模拟人的行为去各个网站溜达,点点按钮,查查数据,或者把看到的信息背回来。就像一只虫子在一幢楼里不知疲倦地爬来爬去。 你可以这样理解,每个爬虫都是你的分身。就像孙悟空拔了一撮汗毛,吹出一堆猴子一样。 你每天使用的百度,其实就是利用了这种爬虫技术:每天放出无数爬虫到各个网站,把他们的信

weixin_50804299的博客 5万+

小程序强制更新避坑指南:手把手教你实现无缝升级

本文详细解析小程序强制更新的实现方法,重点介绍wx.getUpdateManager API的使用技巧,帮助开发者规避冷热启动机制下的版本管理陷阱。通过实战案例展示如何设计多级更新提示策略,确保用户无缝升级,提升小程序版本更新率。

star的博客 280

网络爬虫【简介】

网络爬虫的简介和浏览器分析工具

2401_88885149的博客 1万+

大模型推理中Prefill与Decode、KV Cache三者说明

Prefill 阶段对输入 Prompt 并行编码,一次性构建KV Cache,属于计算密集型任务。Decode 阶段逐 token 迭代生成,复用KV Cache避免重复计算,属于显存带宽密集型任务。KV Cache是自回归推理的核心基石,用显存换时间,实现两阶段衔接与高效生成。PD 分离通过任务解耦、异构硬件、异步调度、独立批处理,解决传统一体化推理的资源冲突与利用率低下问题,是当前云端大模型推理服务的主流工程优化方向。

a486259的博客 1489

windows 应用爬虫: exe自动操作

之前写了那么多关于手机和网页爬取,今天就写一期关于exe的爬取,exe的爬取其实也是类似的,一个方式是抓包,还有一个模拟人工界面获取元素数据。抓包肯定是最直接,数据也是最全的, 有些数据不一定会显示在界面上,或者必须通过一定交付方式,才能显示到页面(比如移动鼠标到具体元素上)。本文依旧采用python方式,先说说怎么通过界面方式驱动应用点击和数据获取。

youbingchen的博客 888

终于有人把网络爬虫讲明白了

摘要:Python网络爬虫的详尽解释。导读:网络爬虫也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理。在大数据时代,信息的采集是一项重要的工作,如果...

苏克的博客 4342

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

网络爬虫解析

网络爬虫(也称为网页蜘蛛、网络机器人)是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。网络爬虫可以用于从网站提取数据,例如监测社交媒体平台上的活动,或者从网上收集新闻和文章。它们也可以用于搜索引擎,如Google和Bing,来抓取和索引网页,以便在用户进行搜索时提供结果。URL通常由多个部分组成,包括协议类型(如HTTP、HTTPS)、主机名(域名或IP地址)、路径(资源在主机上的位置)以及可选的查询参数(用于传递额外的信息)。通过URL,用户可以方便地访问和定位到特定的网络资源。

2301_82032652的博客 2634

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

什么是网络爬虫?有什么用?怎么爬?终于有人讲明白了

【导读】网络爬虫也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理。在大数据时代,信息的采集是一项重要的工作,如果单纯靠人力进行信息采集,不仅低效繁琐,搜集的成本也会提高。 此时,我们可以使用网络爬虫对数据信息进行自动采集,比如应用于搜索引擎中对站点进行爬取收录,应用于数据分析与挖掘中对数据进行采集,应用于金融分析中对金融数据进行采集,除此之外,还可以将网络爬虫应用于舆情监测...

python学习者的博客 3万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

零基础爬虫入门(一) | 初识网络爬虫

本篇博文主要介绍网络爬虫的基本概念、工作原理以及开发环境。 我们为什么要了解网络爬虫? 因为当今从事科学研究等,需要大量的数据,但是这些数据公开的又非常的少,大量的数据都在大公司的手中。我们这些普通人本身并没有那么多数据,但是我们又需要大量的数据。那么,这时我们就需要用到网络爬虫了。 Chapter01 | 初识网络爬虫一、什么是网络爬虫1、爬虫产生的背景1.1、万维网的高速发展1.2、搜索引...

不温卜火 6723

网络爬虫技术

本文介绍了网络爬虫的基础概念与应用。主要内容包括:1)爬虫定义与分类,分为通用、聚焦、增量式和深层网络爬虫四种类型;2)核心工作原理,涉及HTTP请求过程、响应结构和网页基础;3)常见爬取策略如宽度优先(BFS)和深度优先(DFS)遍历;4)Python中Requests库的使用方法,包括请求发送、响应处理和异常捕获。文章通过百度网页爬取实例,展示了网络爬虫从发送请求到获取响应的完整流程,为初学者提供了网络数据采集的基础知识框架。

2302_78993464的博客 2958
上一篇: 年轻人的第一个爬虫
下一篇: python中的编码问题
codeMore++
博客等级 码龄9年 6粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值