
Python爬虫系列
文章平均质量分 97
爬虫教程专栏是一个专门为Python爬虫用户提供学习资源的平台。在这个平台上,可以找到各种关于Python爬虫的教程、文章和案例,帮助大家更好地理解和掌握Python爬虫的使用技巧和知识。本专栏涉及内容:Requests请求、HTML解析、数据存储、异步、JS逆向、APP逆向等
失心疯_2023
一个无知的学习者...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Python爬虫从入门到入狱系列合集
Python爬虫教程系列主要介绍如何使用Python语言进行网络爬虫的开发。网络爬虫是一种自动获取网页内容的程序,它可以在互联网上搜集和整理信息,广泛应用于搜索引擎、数据挖掘、舆情分析等领域。本系列教程将从基础开始,逐步深入,帮助读者掌握Python爬虫的基本原理、技术方法和实际应用。原创 2024-01-19 15:24:48 · 955 阅读 · 0 评论 -
【Python爬虫系列】_034.抓包工具_Charles
Charles其实是一款代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用Charles是在 常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。原创 2024-12-17 08:57:22 · 478 阅读 · 0 评论 -
【Python爬虫系列】_033.Scrapy_分布式爬虫
* 增量式爬虫是一种网络爬虫技术,它只爬取网站中自上次爬取以来发生变化的页面或数据* 这种技术可以减少网络爬虫对服务器和带宽的负担,提高爬虫的效率,并确保爬取到的数据是最新的。原创 2024-12-17 08:50:49 · 499 阅读 · 0 评论 -
【Python爬虫系列】_032.Scrapy_全站爬取
Scrapy是一个快速的高级Web爬虫框架,用于爬取网站并从页面中提取结构化的数据Scrapy提供了多种内置的Spider模板,这些模板可以帮助开发者快速开始编写爬虫Scrapy中常见的四个Spider模板。原创 2024-12-17 08:47:42 · 246 阅读 · 0 评论 -
【Python爬虫系列】_031.Scrapy_模拟登陆&中间件
* 模拟登录最主要要解决的问题就是cookie如何处理* Cookie是一种由Web服务器发送到客户端(通常是浏览器)的小数据片段,客户端在后续请求中会将其发送回服务器* Cookie可以用于存储用户的登录状态、偏好设置、会话信息等* 通过使用Cookie,服务器可以在多个请求之间识别和跟踪用户,从而实现会话管理* 在requests中,处理cookie主要有两种方案原创 2024-10-22 20:30:02 · 353 阅读 · 0 评论 -
【Python爬虫系列】_030.Scrapy_详情页&分页&图片下载
网站详情页(Detail Page)是网站中展示特定内容或物品详细信息的页面。这些页面通常包含关于该内容或物品的详细信息,如产品描述、价格、规格、图片、用户评价、小说章节内容等原创 2024-10-18 08:00:00 · 449 阅读 · 0 评论 -
【Python爬虫系列】_028.Python玩Redis
* Redis对象操作Redis数据库的语法与Redis数据库的命令语法基本一致,只有几个有所区别* Redis对象将Redis数据库的命令语法封装成了各种方法原创 2024-10-15 08:00:00 · 216 阅读 · 0 评论 -
【Python爬虫系列】_027.初识Redis数据库
* Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API* Redis是NoSQL(全名为Not Only SQL,指的是非关系型的数据库)中的一种存储工具,他是一个key-value存储系统。默认有16个数据库从0到15来进行表示* redis是一个key-value存储系统。支持存储的value类型相对更多原创 2024-10-14 08:00:00 · 209 阅读 · 0 评论 -
【Python爬虫系列】_026.面向对象玩爬虫
利用面向对象的思想写爬虫程序的时候,并不能减少代码量,仅仅是将面向过程编写的爬虫程序中一些需要通过函数参数传递的变量存储到对象的属性中,在类内部可以通过`self.属性`的方式,在任何位置调用原创 2024-10-11 08:00:00 · 243 阅读 · 0 评论 -
【Python爬虫系列】_025.关于互斥锁(Lock)
有人说,Python有了GLI锁机制,就不需要考虑线程安全了!原创 2024-10-10 09:27:04 · 356 阅读 · 0 评论 -
【Python爬虫系列】_024.MySQL数据库
课 程 推 荐。原创 2024-09-20 08:00:00 · 120 阅读 · 0 评论 -
【Python爬虫系列】_023.关于视频爬取
* 大部分网站,都会对大型视频进行切割,切割成几秒钟一个片段 * 切割后的片段叫ts文件,此时ts文件顺序是乱的 * 使用m3u8--m3u文件记录ts文件的正确播放顺序,一般用utf-8编码 * 播放的时候,直接拉去m3u8文件,就相当于获取到了视频的所有资源原创 2024-09-17 08:00:00 · 311 阅读 · 0 评论 -
【Python爬虫系列】_022.异步文件操作aiofiles
* `aiofiles`是一个Python库,它提供了异步文件操作的功能,基于Python的`asyncio`库* 通过使用`aiofiles`,可以在异步程序中进行文件的读取、写入和操作,而不会阻塞事件循环* 这对于需要处理大量文件或需要与其他异步操作结合的场景非常有用原创 2024-09-16 08:00:00 · 731 阅读 · 0 评论 -
【Python爬虫系列】_021.异步请求aiohttp
* `asyncio`模块其内部实现了对`TCP、UDP、SSL`协议的异步操作,但是对于HTTP请求来说,就需要用`aiohttp`实现了* `aiohttp`是一个基于异步` I/O `的Web框架,专注于提供高性能、低开销的异步Web服务。* `aiohttp`允许我们同时处理大量并发请求,而不会阻塞程序执行* `aiohttp` 使用Python的` async/await `语法来实现异步编程* `aiohttp`是一个基于`asyncio`的异步HTTP网络模块,它既提供了服务端,又提供原创 2024-09-15 08:00:00 · 110 阅读 · 0 评论 -
【Python爬虫系列】_020.异步协程asyncio
asyncio是用来编写并发代码的库,使用语法。asyncio被用作多个提供高性能Python异步框架的基础,包括网络和网站服务,数据库连接库,分布式任务队列等等。asyncio往往是构建IO密集型和高层级 结构化 网络代码的最佳选择。原创 2024-09-14 08:00:00 · 180 阅读 · 0 评论 -
【Python爬虫系列】_019.生产者和消费者模型
【代码】019.Python爬虫系列_生产者和消费者模型。原创 2024-09-13 08:00:00 · 138 阅读 · 0 评论 -
【Python爬虫系列】_018.多线程与多进程
多线程模块from threading import Thread# 创建线程t = Thread(target=work, args=('参数1','参数2',...))# 启动线程t.start()线程池模块from concurrent.futures import ThreadPoolExecutor# 创建最多拥有12个线程的线程池# 提交线程任务t.submit(work, 参数1, 参数2,....)原创 2024-09-12 08:00:00 · 152 阅读 · 0 评论 -
【Python爬虫系列】_017.防盗链&代理
当我们反复抓取一个网站时,由于请求过于频繁,服务器很可能会将你的IP进行封锁来反爬.应对方案就是通过网络代理的形式进行伪装.对比发现,两个地址中间有一部分不一致,那么我们仔细观察可以发现这两个地址中间的值是可以获取到的!通过我们观看视频的地址,获取到这个cont-xxxx,并设置获取视频地址的url。到页面源代码中,查找是否有该视频的地址(发现页面源代码中根本没有视频地址)通过抓包工具,我们找到视频地址的页面,并根据Headers获取到页面url。根据获取到的url地址,开始编写代码,请求页面。原创 2024-09-11 08:00:00 · 160 阅读 · 0 评论 -
【Python爬虫系列】_016.关于登录和验证码
首先查看登录时发送的请求中,请求头中cookie信息查找cookie信息的来源(通过哪个请求的响应携带回来的)这个案例中,登录请求的cookie信息是通过验证码请求返回携带的但有些网站并不是,所以每个网站可能都不同,需要具体跟踪分析通过session对象发送请求,获取验证码图片,并自动保存cookie信息识别验证码图片,获取验证码登录账号、密码、验证码等创建post请求参数使用保存了cookie信息的session对象向登录页面发送post请求。原创 2024-09-10 08:00:00 · 1551 阅读 · 0 评论 -
【Python爬虫系列】_015.Cookie和Session
在服务器端,资源分为两类:免费资源和权限资源免费资源可以直接访问获取,权限资源需要登录或者付费之后才能获取那么,在获取权限资源的时候就涉及到权限验证的问题。我们在发送请求的时候把登录信息一起发送过去就可以得到验证了但是,权限资源很多的情况下,难道每次请求都发送一次账号和密码吗?实际并不是这样的登录流程客户端在登录的时候,向服务端发送账号和密码请求服务端接收到账号和密码验证成功之后,会将当前账号生成一个唯一标识码存储在一个存储空间中。原创 2024-09-09 08:00:00 · 263 阅读 · 0 评论 -
【Python爬虫系列】_013.re正则解析
Regular Expression:正则表达式,一种使用表达式的方式对字符串进行匹配的语法规则我们抓取到的网页源代码本质上就是一个超长的字符串,想从里面提取内容,用正则再合适不过了正则的优点:速度快, 效率高, 准确性高正则的缺点:新手上手难度有点高不过只要掌握了正则编写的逻辑关系,写出一个提取页面内容的正则其实并不复杂正则的语法:使用元字符进行排列组合用来匹配字符串正则匹配是一个模糊的匹配(不是精确匹配)re模块有两个对象Pattern:正则表达式对象(正则对象)原创 2024-09-07 08:00:00 · 118 阅读 · 0 评论 -
【Python爬虫系列】_014.解析练习
【代码】014.Python爬虫系列_解析练习。原创 2024-09-08 08:00:00 · 127 阅读 · 0 评论 -
【Python爬虫系列】_012.xpath解析
1、 解析XML和HTML文档:lxml提供了两种主要的解析器,分别是基于C的解析器和基于Python的解析器。基于C的解析器使用libxml2库,速度较快,而基于Python的解析器则更加容易安装和使用。使用lxml的解析器,可以将XML和HTML文档解析成一个树状结构的Element对象,从而可以通过操作Element对象来访问、修改和操作文档的内容。2、Element对象:Element对象是lxml中的主要对象,它代表了XML或HTML文档中的一个元素或标签。原创 2024-09-06 08:00:00 · 131 阅读 · 0 评论 -
【Python爬虫系列】_011.bs4解析
通过学习requests库,我们现在可以通过代码对网址发送请求,并且获取到网址的响应内容但是,我们获取到的是整个页面的源代码,并不仅仅只有我们想要的内容,里面包含了很多其他不需要的内容那么,我们想要获取到想要的内容,就要开始学习内容解析相关的库了常用响应内容解析库1. bs4 2. xpath 3. re . . .这些库没有说哪个最好,根据个人喜好,习惯用哪个就用哪个。原创 2024-09-02 21:34:13 · 417 阅读 · 0 评论 -
【Python爬虫系列】_010.requests库详解(重点)
常用方法requests.get() # 发送get请求# 请求参数可以直接放在url的?后面,也可以放在字典里,传递给params参数requests.post() # 发送post请求# 请求参数要放在字典中,然后传递给data参数requests有两个响应对象response响应对象包含:响应行、响应头、空行、响应体(通过content、text、json获取)原创 2024-09-04 08:00:00 · 1590 阅读 · 0 评论 -
【Python爬虫系列】_009.urllib模块案例
urllib库的示例就写到这里吧,各种无厘头的问题,感觉要崩溃了…案例:拿到指定网址中“python"相关的数据内容。网址:https://www.runoob.com/直接学习最常用的网络请求库requests…原创 2024-09-03 08:00:00 · 211 阅读 · 0 评论 -
【Python爬虫系列】_008.urllib模块(了解)
urllib库是Python内置的最基本的网络请求库,不需要额外的下载提供直接发送HTTP请求,及时处理HTTP响应的API在后续的爬虫中主要还是使用requests库来进行HTTP请求,但是requests库底层还是基于urllib库,所以先学习urllib库,有助于理解requests库。原创 2024-09-02 10:00:00 · 160 阅读 · 0 评论 -
【Python爬虫系列】_007.初识爬虫
概念爬虫就是通过编写程序来爬取互联网上的优秀资源(图片, 音频, 视频, 数据)爬取的一定是 能看见的东西, 公开的一些东西.原创 2024-09-02 09:00:00 · 368 阅读 · 0 评论 -
【Python爬虫系列】_006.Web前端基础HTML+CSS
其他素标签:section、article、footer等,对于爬虫来讲,就可以看成是div素标签。点击提交按钮之后,会将form标签内所有用户填入的内容按下面的格式发送给action指定的服务器。CSS的基本语法由选择器、属性、属性的值组成,如果选择器有多个属性,由分号隔开。/* before在指定标签内容之前添加内容,并设置样式 *//* after在指定标签内容之后添加内容,并设置样式 */注意:这里的代码都是英文格式,例如花括号、冒号和分号。/*设置所有标签为黑底黄字,包含body标签*/原创 2024-09-01 09:30:00 · 261 阅读 · 0 评论 -
【Python爬虫系列】_005.浏览器开发者工具(详解)
Elements(元素)分析当前页面节点,用来辅助书写BS或者XPath这里面的数据与源代码有区别,不一定准确(避坑)Console(控制台)这个除了查看错误信息、打印调试信息(console.log())、写一些测试脚本以外,还可以当作Javascript API查看用例如我想查看console都有哪些方法和属性,我可以直接在Console中输入"console"并执行后续学js逆向的时候需要用到Sources(源代码)与在网页页面,鼠标右键——查看网页源代码 内容一致。原创 2024-09-01 09:00:00 · 218 阅读 · 0 评论 -
【Python爬虫系列】_004.web请求全过程剖析(重点)
本小节给各位好好剖析一下web请求的全部过程,这样有助于后面我们遇到的各种各样的网站就有了入手的基本准则了.那么到底我们浏览器在输入完网址到我们看到网页的整体内容,这个过程中究竟发生了些什么?这里我们以百度为例在访问百度的时候,浏览器会把这一次请求发送到百度的服务器(百度的一台电脑),由服务器接收到这个请求, 然后加载一些数据. 返回给浏览器, 再由浏览器进行显示听起来好像是个废话…但是这里蕴含着一个极为重要的东西在里面注意。原创 2024-08-31 07:15:00 · 1067 阅读 · 0 评论 -
【Python爬虫系列】_003.HTTP&HTTPS协议
第三方通过服务器的公钥,对服务器的加密响应数据进行解密,对响应数据进行篡改之后,通过自己的私钥进行加密。客户端接收到第三方篡改后的加密数据,使用第三方的公钥进行解密(可以正常解密数据,无法发现数据被篡改)如果一开始,客户端拿到的公钥就是第三方的,第三方通过自己的私钥,可以解密客户端的请求内容。然后第三方再通过服务器的公钥对请求内容进行加密,发送给服务器。第三方获取到了公钥,也无法对客户端发送的请求内容进行解密,无法查看到请求内容。客户端发送的请求内容,通过公钥进行加密,需要私钥才能解密。原创 2024-08-31 07:00:00 · 498 阅读 · 0 评论 -
【Python爬虫系列】_002.初识协议
TCP协议,客户端每次传输数据包给服务器之后,服务器都要回传信息给客户端,告诉客户端有没有接收成功,成功之后再继续传下一个数据包。TCP协议是面相连接,在一开始就会确定一条通道(1——2——3——5——8),后续所有的数据包全部都按这一条通道线路传输。而在所有步骤中的协议集合称为"TCP/IP协议栈"(是一个协议栈,由很多相关协议组成,并非是某一个单独协议)UDP协议是无连接,每一次的数据包传输的通道都不固定,每一次的传输通道都可能不同,是不确定的。我们的关注点应该是:应用层(掌握)+传输层(了解)原创 2024-08-30 17:28:43 · 661 阅读 · 0 评论 -
【Python爬虫系列】_001.网络基础
原因:同一个IP地址可能对应多个不同的站点。单靠IP地址无法确定是哪个网站。计算机之间通讯,即使我们使用的是域名,但是最终还是通过IP地址。在测试时,会出现通过域名可以访问网站,但是通过IP地址不能访问。原创 2024-08-30 17:28:14 · 736 阅读 · 0 评论