- Beautiful Soup 是 Python 的一个 HTML 或 XML 的解析库,我们可以用它来方便地从网页中提取数据。它拥有强大的 API 和多样的解析方式,本节就来了解下它的安装方式。 1. 相关链接 官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc 中文文档:https://www.crum... Beautiful Soup 是 Python 的一个 HTML 或 XML 的解析库,我们可以用它来方便地从网页中提取数据。它拥有强大的 API 和多样的解析方式,本节就来了解下它的安装方式。 1. 相关链接 官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc 中文文档:https://www.crum...
- 用 Splash 做页面抓取时,如果爬取的量非常大,任务非常多,用一个 Splash 服务来处理的话,未免压力太大了,此时可以考虑搭建一个负载均衡器来把压力分散到各个服务器上。这相当于多台机器多个服务共同参与任务的处理,可以减小单个 Splash 服务的压力。 1. 配置 Splash 服务 要搭建 Splash 负载均衡,首先要有多个 Splash 服务。假如这里在 4 ... 用 Splash 做页面抓取时,如果爬取的量非常大,任务非常多,用一个 Splash 服务来处理的话,未免压力太大了,此时可以考虑搭建一个负载均衡器来把压力分散到各个服务器上。这相当于多台机器多个服务共同参与任务的处理,可以减小单个 Splash 服务的压力。 1. 配置 Splash 服务 要搭建 Splash 负载均衡,首先要有多个 Splash 服务。假如这里在 4 ...
- mitmproxy 是一个支持 HTTP 和 HTTPS 的抓包程序,类似 Fiddler、Charles 的功能,只不过它通过控制台的形式操作。 此外,mitmproxy 还有两个关联组件,一个是 mitmdump,它是 mitmproxy 的命令行接口,利用它可以对接 Python 脚本,实现监听后的处理;另一个是 mitmweb,它是一个 Web 程序,通过它以清楚地... mitmproxy 是一个支持 HTTP 和 HTTPS 的抓包程序,类似 Fiddler、Charles 的功能,只不过它通过控制台的形式操作。 此外,mitmproxy 还有两个关联组件,一个是 mitmdump,它是 mitmproxy 的命令行接口,利用它可以对接 Python 脚本,实现监听后的处理;另一个是 mitmweb,它是一个 Web 程序,通过它以清楚地...
- 1.4 节中,我们介绍了几个数据库的安装方式,但这仅仅是用来存储数据的数据库,它们提供了存储服务,但如果想要和 Python 交互的话,还需要安装一些 Python 存储库,如 MySQL 需要安装 PyMySQL,MongoDB 需要安装 PyMongo 等。本节中,我们来说明一下这些存储库的安装方式。 1.4 节中,我们介绍了几个数据库的安装方式,但这仅仅是用来存储数据的数据库,它们提供了存储服务,但如果想要和 Python 交互的话,还需要安装一些 Python 存储库,如 MySQL 需要安装 PyMySQL,MongoDB 需要安装 PyMongo 等。本节中,我们来说明一下这些存储库的安装方式。
- 抓取网页代码之后,下一步就是从网页中提取信息。提取信息的方式有多种多样,可以使用正则来提取,但是写起来相对比较烦琐。这里还有许多强大的解析库,如 lxml、Beautiful Soup、pyquery 等。此外,还提供了非常强大的解析方法,如 XPath 解析和 CSS 选择器解析等,利用它们,我们可以高效便捷地从网页中提取有效信息。 本节中,我们就来介绍一下这些库的安装过... 抓取网页代码之后,下一步就是从网页中提取信息。提取信息的方式有多种多样,可以使用正则来提取,但是写起来相对比较烦琐。这里还有许多强大的解析库,如 lxml、Beautiful Soup、pyquery 等。此外,还提供了非常强大的解析方法,如 XPath 解析和 CSS 选择器解析等,利用它们,我们可以高效便捷地从网页中提取有效信息。 本节中,我们就来介绍一下这些库的安装过...
- 目录索引 1. Winpcap 网络编程一之前言,实验要求,实验目标 2. Winpcap 网络编程二之环境配置,Eclipse 配置 C/C++ 环境 3. Winpcap 网络编程三之环境配置,Eclipse 配置 Winpcap 环境 4. Winpcap 网络编程四之环境配置,VS 配置 Winpcap 环境 5. Winpcap 网络编程五之 ARP 协议获得 M... 目录索引 1. Winpcap 网络编程一之前言,实验要求,实验目标 2. Winpcap 网络编程二之环境配置,Eclipse 配置 C/C++ 环境 3. Winpcap 网络编程三之环境配置,Eclipse 配置 Winpcap 环境 4. Winpcap 网络编程四之环境配置,VS 配置 Winpcap 环境 5. Winpcap 网络编程五之 ARP 协议获得 M...
- 对于 Redis 来说,我们要使用 redis-py 库来与其交互,这里就来介绍一下它的安装方法。 1. 相关链接 GitHub:https://github.com/andymccurdy/redis-py 官方文档:https://redis-py.readthedocs.io/ 2. pip 安装 这里推荐使用 pip 安装,命令如下: 1 pip3... 对于 Redis 来说,我们要使用 redis-py 库来与其交互,这里就来介绍一下它的安装方法。 1. 相关链接 GitHub:https://github.com/andymccurdy/redis-py 官方文档:https://redis-py.readthedocs.io/ 2. pip 安装 这里推荐使用 pip 安装,命令如下: 1 pip3...
- 之前介绍的 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 请求库,也就是说...
- 了解了正则表达式,想必一般情况下的匹配都不会出现什么问题,但是如果一些特殊情况,可能需要用到一些更高级的正则表达式匹配操作,本节我们来说明一下正则表达式的一个较常用又比较重要的知识点 —— 零宽断言。 实例引入 首先我们来看一个例子,这里有一段问答对话: 问:我用的是 Windows XP+Service Pack 2,为什么无法安装输入卡号和密码的控件? 答:在 Win... 了解了正则表达式,想必一般情况下的匹配都不会出现什么问题,但是如果一些特殊情况,可能需要用到一些更高级的正则表达式匹配操作,本节我们来说明一下正则表达式的一个较常用又比较重要的知识点 —— 零宽断言。 实例引入 首先我们来看一个例子,这里有一段问答对话: 问:我用的是 Windows XP+Service Pack 2,为什么无法安装输入卡号和密码的控件? 答:在 Win...
- 我们直接用 Requests、Selenium 等库写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。但是写多了会发现其内部许多代码和组件是可以复用的,如果我们把这些组件抽离出来,将各个功能模块化,就慢慢会形成一个框架雏形,久而久之,爬虫框架就诞生了。 利用框架,我们可以不用再去关心某些功能的具体实现,只需要关心爬取逻辑即可。有了它们,可以大大简化代码量,而且... 我们直接用 Requests、Selenium 等库写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。但是写多了会发现其内部许多代码和组件是可以复用的,如果我们把这些组件抽离出来,将各个功能模块化,就慢慢会形成一个框架雏形,久而久之,爬虫框架就诞生了。 利用框架,我们可以不用再去关心某些功能的具体实现,只需要关心爬取逻辑即可。有了它们,可以大大简化代码量,而且...
- 在 SAE 上搭建自己的 WordPress 博客之后,接下来的工作会轻松比较多。还有一些细节上的处理问题在此做一下记录 1. 绑定域名 首先,你必须有一个自己的域名,建议在国外网站注册域名,首先国外的域名不需要备案的,其实按常理来说是国外域名不需要备案,但是国内的一些机构规定了是国外主机才不需要备案。建议的网站有 Godaddy、name、enom、Ipower、doma... 在 SAE 上搭建自己的 WordPress 博客之后,接下来的工作会轻松比较多。还有一些细节上的处理问题在此做一下记录 1. 绑定域名 首先,你必须有一个自己的域名,建议在国外网站注册域名,首先国外的域名不需要备案的,其实按常理来说是国外域名不需要备案,但是国内的一些机构规定了是国外主机才不需要备案。建议的网站有 Godaddy、name、enom、Ipower、doma...
- 有时候我们在用 requests 抓取页面的时候,得到的结果可能和在浏览器中看到的不一样:在浏览器中可以看到正常显示的页面数据,但是使用 requests 得到的结果并没有。这是因为 requests 获取的都是原始的 HTML 文档,而浏览器中的页面则是经过 JavaScript 处理数据后生成的结果,这些数据的来源有多种,可能是通过 Ajax 加载的,可能是包含在 HT... 有时候我们在用 requests 抓取页面的时候,得到的结果可能和在浏览器中看到的不一样:在浏览器中可以看到正常显示的页面数据,但是使用 requests 得到的结果并没有。这是因为 requests 获取的都是原始的 HTML 文档,而浏览器中的页面则是经过 JavaScript 处理数据后生成的结果,这些数据的来源有多种,可能是通过 Ajax 加载的,可能是包含在 HT...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中 -
一个AI团队帮你写代码:华为云码道Agent Space实战2026/06/25 周四 19:00-21:00
张翰文-华为云码道工程师/郭英旭-青软创新科技集团股份有限公司 软件架构师
本场直播聚焦华为云码道Agent Space两大模式:研发办公、代码开发,亲身体验从需求到代码的AI自动化能力。实操演示基于华为 CodeArts CLI,依托 OpenSpec 规格体系从零搭建业务项目。
即将直播
热门标签