- 之前介绍的 Requests 库是一个阻塞式 HTTP 请求库,当我们发出一个请求后,程序会一直等待服务器响应,直到得到响应后,程序才会进行下一步处理。其实,这个过程比较耗费资源。如果程序可以在这个等待过程中做一些其他的事情,如进行请求的调度、响应的处理等,那么爬取效率一定会大大提高。 aiohttp 就是这样一个提供异步 Web 服务的库,从 Python 3.5 版本开... 之前介绍的 Requests 库是一个阻塞式 HTTP 请求库,当我们发出一个请求后,程序会一直等待服务器响应,直到得到响应后,程序才会进行下一步处理。其实,这个过程比较耗费资源。如果程序可以在这个等待过程中做一些其他的事情,如进行请求的调度、响应的处理等,那么爬取效率一定会大大提高。 aiohttp 就是这样一个提供异步 Web 服务的库,从 Python 3.5 版本开...
- 如果想要大规模抓取数据,那么一定会用到分布式爬虫。对于分布式爬虫来说,我们需要多台主机,每台主机多个爬虫任务,但是源代码其实只有一份。此时我们需要做的就是将一份代码同时部署到多台主机上来协同运行,那么怎么去部署就是另一个值得思考的问题。 对于 Scrapy 来说,它有一个扩展组件,叫作 Scrapyd,我们只需要安装该扩展组件,即可远程管理 Scrapy 任务,包括部署源码... 如果想要大规模抓取数据,那么一定会用到分布式爬虫。对于分布式爬虫来说,我们需要多台主机,每台主机多个爬虫任务,但是源代码其实只有一份。此时我们需要做的就是将一份代码同时部署到多台主机上来协同运行,那么怎么去部署就是另一个值得思考的问题。 对于 Scrapy 来说,它有一个扩展组件,叫作 Scrapyd,我们只需要安装该扩展组件,即可远程管理 Scrapy 任务,包括部署源码...
- Selenium 是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等操作。对于一些 JavaScript 渲染的页面来说,这种抓取方式非常有效。下面我们来看看 Selenium 的安装过程。 1. 相关链接 官方网站:http://www.seleniumhq.org GitHub:https://github.com/SeleniumHQ/se... Selenium 是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等操作。对于一些 JavaScript 渲染的页面来说,这种抓取方式非常有效。下面我们来看看 Selenium 的安装过程。 1. 相关链接 官方网站:http://www.seleniumhq.org GitHub:https://github.com/SeleniumHQ/se...
- 在 Python 2 中,有 urllib 和 urllib2 两个库来实现请求的发送。而在 Python 3 中,已经不存在 urllib2 这个库了,统一为 urllib,其官方文档链接为:https://docs.python.org/3/library/urllib.html。 首先,了解一下 urllib 库,它是 Python 内置的 HTTP 请求库,也就是说... 在 Python 2 中,有 urllib 和 urllib2 两个库来实现请求的发送。而在 Python 3 中,已经不存在 urllib2 这个库了,统一为 urllib,其官方文档链接为:https://docs.python.org/3/library/urllib.html。 首先,了解一下 urllib 库,它是 Python 内置的 HTTP 请求库,也就是说...
- 初级的爬虫我们利用 urllib 和 urllib2 库以及正则表达式就可以完成了,不过还有更加强大的工具,爬虫框架 Scrapy,这安装过程也是煞费苦心哪,在此整理如下。 Windows 平台: 我的系统是 Win7,首先,你要有 Python,我用的是 2.7.7 版本,Python3 相仿,只是一些源文件不同。 官网文档:http://doc.scrapy.org/e... 初级的爬虫我们利用 urllib 和 urllib2 库以及正则表达式就可以完成了,不过还有更加强大的工具,爬虫框架 Scrapy,这安装过程也是煞费苦心哪,在此整理如下。 Windows 平台: 我的系统是 Win7,首先,你要有 Python,我用的是 2.7.7 版本,Python3 相仿,只是一些源文件不同。 官网文档:http://doc.scrapy.org/e...
- Redis 是一个基于内存的高效的键值型非关系型数据库,存取效率极高,而且支持多种存储数据结构,使用也非常简单。本节中,我们就来介绍一下 Python 的 Redis 操作,主要介绍 RedisPy 这个库的用法。 1. 准备工作 在开始之前,请确保已经安装好了 Redis 及 RedisPy 库。如果要做数据导入 / 导出操作的话,还需要安装 RedisDump。如果没有... Redis 是一个基于内存的高效的键值型非关系型数据库,存取效率极高,而且支持多种存储数据结构,使用也非常简单。本节中,我们就来介绍一下 Python 的 Redis 操作,主要介绍 RedisPy 这个库的用法。 1. 准备工作 在开始之前,请确保已经安装好了 Redis 及 RedisPy 库。如果要做数据导入 / 导出操作的话,还需要安装 RedisDump。如果没有...
- 我们直接用 Requests、Selenium 等库写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。但是写多了会发现其内部许多代码和组件是可以复用的,如果我们把这些组件抽离出来,将各个功能模块化,就慢慢会形成一个框架雏形,久而久之,爬虫框架就诞生了。 利用框架,我们可以不用再去关心某些功能的具体实现,只需要关心爬取逻辑即可。有了它们,可以大大简化代码量,而且... 我们直接用 Requests、Selenium 等库写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。但是写多了会发现其内部许多代码和组件是可以复用的,如果我们把这些组件抽离出来,将各个功能模块化,就慢慢会形成一个框架雏形,久而久之,爬虫框架就诞生了。 利用框架,我们可以不用再去关心某些功能的具体实现,只需要关心爬取逻辑即可。有了它们,可以大大简化代码量,而且...
- 有时候我们在用 requests 抓取页面的时候,得到的结果可能和在浏览器中看到的不一样:在浏览器中可以看到正常显示的页面数据,但是使用 requests 得到的结果并没有。这是因为 requests 获取的都是原始的 HTML 文档,而浏览器中的页面则是经过 JavaScript 处理数据后生成的结果,这些数据的来源有多种,可能是通过 Ajax 加载的,可能是包含在 HT... 有时候我们在用 requests 抓取页面的时候,得到的结果可能和在浏览器中看到的不一样:在浏览器中可以看到正常显示的页面数据,但是使用 requests 得到的结果并没有。这是因为 requests 获取的都是原始的 HTML 文档,而浏览器中的页面则是经过 JavaScript 处理数据后生成的结果,这些数据的来源有多种,可能是通过 Ajax 加载的,可能是包含在 HT...
- Tornado 是一个支持异步的 Web 框架,通过使用非阻塞 I/O 流,它可以支撑成千上万的开放连接,效率非常高,本节就来介绍一下它的安装方式。 1. 相关链接 GitHub:https://github.com/tornadoweb/tornado PyPI:https://pypi.python.org/pypi/tornado 官方文档:http://www.... Tornado 是一个支持异步的 Web 框架,通过使用非阻塞 I/O 流,它可以支撑成千上万的开放连接,效率非常高,本节就来介绍一下它的安装方式。 1. 相关链接 GitHub:https://github.com/tornadoweb/tornado PyPI:https://pypi.python.org/pypi/tornado 官方文档:http://www....
- 前面我们成功安装好了 Selenium 库,但是它是一个自动化测试工具,需要浏览器来配合使用,本节中我们就介绍一下 Chrome 浏览器及 ChromeDriver 驱动的配置。 首先,下载 Chrome 浏览器,方法有很多,在此不再赘述。 随后安装 ChromeDriver。因为只有安装 ChromeDriver,才能驱动 Chrome 浏览器完成相应的操作。下面我们来介... 前面我们成功安装好了 Selenium 库,但是它是一个自动化测试工具,需要浏览器来配合使用,本节中我们就介绍一下 Chrome 浏览器及 ChromeDriver 驱动的配置。 首先,下载 Chrome 浏览器,方法有很多,在此不再赘述。 随后安装 ChromeDriver。因为只有安装 ChromeDriver,才能驱动 Chrome 浏览器完成相应的操作。下面我们来介...
- RedisDump 是一个用于 Redis 数据导入 / 导出的工具,是基于 Ruby 实现的,所以要安装 RedisDump,需要先安装 Ruby。 1. 相关链接 GitHub:https://github.com/delano/redis-dump 官方文档:http://delanotes.com/redis-dump 2. 安装 Ruby 有关 Ruby 的... RedisDump 是一个用于 Redis 数据导入 / 导出的工具,是基于 Ruby 实现的,所以要安装 RedisDump,需要先安装 Ruby。 1. 相关链接 GitHub:https://github.com/delano/redis-dump 官方文档:http://delanotes.com/redis-dump 2. 安装 Ruby 有关 Ruby 的...
- 前言 前面我们介绍了 BeautifulSoup 的用法,这个已经是非常强大的库了,不过还有一些比较流行的解析库,例如 lxml,使用的是 Xpath 语法,同样是效率比较高的解析方法。如果大家对 BeautifulSoup 使用不太习惯的话,可以尝试下 Xpath。 参考来源 lxml 用法源自 lxml python 官方文档,更多内容请直接参阅官方文档,本文对其进行翻... 前言 前面我们介绍了 BeautifulSoup 的用法,这个已经是非常强大的库了,不过还有一些比较流行的解析库,例如 lxml,使用的是 Xpath 语法,同样是效率比较高的解析方法。如果大家对 BeautifulSoup 使用不太习惯的话,可以尝试下 Xpath。 参考来源 lxml 用法源自 lxml python 官方文档,更多内容请直接参阅官方文档,本文对其进行翻...
- 我们可以把互联网比作一张大网,而爬虫(即网络爬虫)便是在网上爬行的蜘蛛。把网的节点比作一个个网页,爬虫爬到这就相当于访问了该页面,获取了其信息。可以把节点间的连线比作网页与网页之间的链接关系,这样蜘蛛通过一个节点后,可以顺着节点连线继续爬行到达下一个节点,即通过一个网页继续获取后续的网页,这样整个网的节点便可以被蜘蛛全部爬行到,网站的数据就可以被抓取下来了。 1. 爬虫概述... 我们可以把互联网比作一张大网,而爬虫(即网络爬虫)便是在网上爬行的蜘蛛。把网的节点比作一个个网页,爬虫爬到这就相当于访问了该页面,获取了其信息。可以把节点间的连线比作网页与网页之间的链接关系,这样蜘蛛通过一个节点后,可以顺着节点连线继续爬行到达下一个节点,即通过一个网页继续获取后续的网页,这样整个网的节点便可以被蜘蛛全部爬行到,网站的数据就可以被抓取下来了。 1. 爬虫概述...
- 本书此部分内容属进阶内容,暂不开放。 如需查看更多可以购买书籍查看。 购买地址: https://item.jd.com/26114674847.html https://item.jd.com/26124473455.html 本书由图灵教育 - 人民邮电出版社出版发行。 作者:崔庆才 视频学习资源: 自己动手,丰衣足食!Python3 网络爬虫实战案例 Python3... 本书此部分内容属进阶内容,暂不开放。 如需查看更多可以购买书籍查看。 购买地址: https://item.jd.com/26114674847.html https://item.jd.com/26124473455.html 本书由图灵教育 - 人民邮电出版社出版发行。 作者:崔庆才 视频学习资源: 自己动手,丰衣足食!Python3 网络爬虫实战案例 Python3...
- 最近碰到了一个问题,项目中很多文件都是接手过来的中文命名的一些素材,结果在部署的时候文件名全都乱码了,导致项目无法正常运行。 后来请教了一位大佬怎么解决文件名乱码的问题,他说这个需要正面解决吗?不需要,把文件名全部改掉,文件名永远不要用中文,永远不要。 我想他这么说的话,一定也是凭经验得出来的。 这里也友情提示大家,项目里面文件永远不要用中文,永远不要! 好,那不用中文用啥... 最近碰到了一个问题,项目中很多文件都是接手过来的中文命名的一些素材,结果在部署的时候文件名全都乱码了,导致项目无法正常运行。 后来请教了一位大佬怎么解决文件名乱码的问题,他说这个需要正面解决吗?不需要,把文件名全部改掉,文件名永远不要用中文,永远不要。 我想他这么说的话,一定也是凭经验得出来的。 这里也友情提示大家,项目里面文件永远不要用中文,永远不要! 好,那不用中文用啥...
上滑加载中
推荐直播
-
华为云码道-玩转OpenClaw,在线养虾2026/03/11 周三 19:00-21:00
刘昱,华为云高级工程师/谈心,华为云技术专家/李海仑,上海圭卓智能科技有限公司CEO
OpenClaw 火爆开发者圈,华为云码道最新推出 Skill ——开发者只需输入一句口令,即可部署一个功能完整的「小龙虾」智能体。直播带你玩转华为云码道,玩转OpenClaw
回顾中 -
华为云码道-AI时代应用开发利器2026/03/18 周三 19:00-20:00
童得力,华为云开发者生态运营总监/姚圣伟,华为云HCDE开发者专家
本次直播由华为专家带你实战应用开发,看华为云码道(CodeArts)代码智能体如何在AI时代让你的创意应用快速落地。更有华为云HCDE开发者专家带你用码道玩转JiuwenClaw,让小艺成为你的AI助理。
回顾中 -
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中
热门标签