Logo

怎么用Python导出HTML网页为纯文本txt文件?一分钟教会你

photo

2024年06月03日

在你的日常生活与职场中,时常会需要将网络文档保存以便将来参考。传统的手动复制与粘贴方式不仅效率低下、耗时耗力,还可能因操作失误导致信息错误。幸运的是,Python为我们提供了更为便捷的解决方案。接下来将向您展示一个高效的程序,它们能够让您轻松地将网页信息转换为文档格式,从而大幅提升您的工作效率。

首先,确保你已经安装了所需的库。如果没有,可以通过以下命令安装:

pip install requests beautifulsoup4

接下来是程序主要代码:

import requests
from bs4 import BeautifulSoup

# 网页URL这里需要你替换成你自己所需要的url值
url = 'http://example.com示例网址,请替换成你自己的'

# 发送HTTP请求获取网页内容
response = requests.get(url)
web_content = response.text

# 使用BeautifulSoup解析HTML
soup = BeautifulSoup(web_content, 'html.parser')

# 提取网页中的文本内容
# 这里使用strip=True来去除每行末尾的空白字符,包括换行符
# 使用joinlines=True来将所有文本合并为一个长字符串,去除中间的空白行
text = '\n'.join(soup.stripped_strings)

# 保存文本内容到txt文件
with open('output.txt', 'w', encoding='utf-8') as file:
    file.write(text)

print('网页内容已提取并保存到文本文件。')

这段 Python 代码的作用是从指定的 URL 下载网页内容,并将其纯文本内容提取出来,最后保存到一个名为 “output.txt” 的文本文件中。以下是每一步骤的详细解释:

1. 导入库:

`import requests` 导入了 `requests` 库,这是一个用于发送 HTTP 请求的库,可以方便地获取网页内容。

2. 定义要爬取的网址:

这里定义了一个字符串变量 `url`,它指向了示例网址 `’http://example.com’`。在实际应用中,您可以替换为想要爬取的实际网址。

3. 发送 GET 请求并获取响应:

使用 `requests.get()` 函数向指定的 `url` 发送一个 HTTP GET 请求。返回的对象 `response` 包含了服务器对请求的响应,其中包括了网页的原始内容以及其他响应头信息。

4. 提取响应的文本内容:

从 `response` 对象中获取网页的 HTML 内容作为字符串,赋值给变量 `web_content`。

5. 解析 HTML 内容:

使用 `BeautifulSoup` 创建一个解析器对象 `soup`,传入 `web_content` 作为要解析的 HTML 文档,同时指定了解析器类型为 Python 自带的 ‘html.parser’。`soup` 对象可以用来遍历、搜索、修改和提取 HTML 文档中的内容。

6. 提取并合并网页中的所有文本:

`stripped_strings` 是 `BeautifulSoup` 对象的一个生成器,它会迭代去除标签后所有的字符串内容(即去除字符串两边的空白字符,并忽略空字符串),并将这些文本内容连接起来,每个文本块之间用换行符 `\n` 分隔,最终得到一个只包含纯文本内容的字符串 `text`。

7. 将文本内容写入文件:

使用上下文管理器 `with` 打开一个名为 `’output.txt’` 的文件,模式设为 `’w’` 表示覆盖写入,同时指定了编码为 `’utf-8’` 以支持多语言字符。接着调用 `file.write(text)` 将 `text` 字符串内容写入到此文件中。

8. 输出提示信息:

最后,程序打印出一条消息,表明网页内容已经成功提取并保存到了文本文件中。

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
所有附件
该文章没有附件.
本文为原创文章,请注意保留出处!

热门文章

修复群晖Synology Drive client右键菜单缺失问题 本教程主要解决windows10右键菜单中没有SynologyDrive菜单的问题,整体思路是找到...修复群晖SynologyDriveclient右键菜单缺失问题 作者:Pastore Antonio
2005 浏览量
docker如何查看一个镜像内部的目录结构及其内部都有哪些文件 前言:有时候我们会在docker上下载一个镜像,或者是上传一个镜像到docker上,甚至有时候就是在...docker如何查看一个镜像内部的目录结构及其内部都有哪些文件 作者:Pastore Antonio
1944 浏览量
Adobe Acrobat Pro 激活 这里记录了一些AdobeAcrobat的激活教程和组件。浏览量:1,825 作者:Pastore Antonio
1668 浏览量
追寻日出,找回自己 为什么我要去追寻日出?其实我是一个很懒的人,每次都起不来,直到有一次我在租房中睡到了大天亮,阳光照...追寻日出,找回自己 作者:Pastore Antonio
1625 浏览量
Swagger2 接口多级分组方法 swagger无疑是Java开发的最佳伴侣,接口非常方便调试;当然也有用Postman,因人而异吧...Swagger2接口多级分组方法 作者:Pastore Antonio
1532 浏览量