【python】python抓取古诗文内容保存(源码)【独一无二】

简介: 【python】python抓取古诗文内容保存(源码)【独一无二】

一、设计目的

使用Python语言,抓取古诗文网 古诗内容:

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 古诗文 ” 获取。👈👈👈


抓取内容如下:

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 古诗文 ” 获取。👈👈👈


二、代码分析

爬取古诗文网站上许渊冲的诗文,并将其标题、作者、地点和内容写入到一个名为 “poem20.txt” 的文本文件中。具体分析如下:


1.引入所需的模块:

  • requests:用于发送 HTTP 请求。
  • etree:lxml 库的一部分,用于解析 HTML 文档。
# 请求头如下
header = {
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36" 
}


2.循环爬取数据:

  • 使用 for 循环迭代 1 到 5,以获取多个页面的数据。
  • 构建每个页面的 URL,其中作者参数是许渊冲。
  • 使用 requests.get() 方法发送 GET 请求,获取页面的 HTML 内容。


3.解析 HTML 内容:

  • 使用 etree.HTML() 方法将 HTML 内容解析为 Element 对象。

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 古诗文 ” 获取。👈👈👈


4.提取诗文信息:

  • 使用 XPath 表达式从页面中提取标题、作者、地点和内容。
  • 通过循环,逐个提取每篇诗文的信息。


5.写入文本文件:

  • 将提取的标题、作者、地点和内容写入到名为 “poem20.txt” 的文本文件中。
  • 使用 with open() 语句打开文件,以追加模式(‘a+’)写入内容。
  • 将标题、作者和地点写入一行,将内容写入下一行,以便在文件中呈现清晰。
with open('poem20.txt', 'a+', encoding='utf-8') as f:
  f.write(title + '\n')
  f.write(author + palce)
  f.write(text)
  f.write('\n')


6.异常处理:

  • 在各个可能出现异常的代码块中添加了 try-except 语句,以处理可能的异常情况。


爬取结果如下:


👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 古诗文 ” 获取。👈👈👈

相关文章
|
1月前
|
Python
用python进行视频剪辑源码
这篇文章提供了一个使用Python进行视频剪辑的源码示例,通过结合moviepy和pydub库来实现视频的区间切割和音频合并。
39 2
|
2月前
|
Python
"揭秘!Python如何运用神秘的正则表达式,轻松穿梭于网页迷宫,一键抓取隐藏链接?"
【8月更文挑战第21天】Python凭借其强大的编程能力,在数据抓取和网页解析领域表现出高效与灵活。通过结合requests库进行网页请求及正则表达式进行复杂文本模式匹配,可轻松提取网页信息。本示例展示如何使用Python和正则表达式解析网页链接。首先确保已安装requests库,可通过`pip install requests`安装。接着,利用requests获取网页内容,并使用正则表达式提取所有`<a>`标签的`href`属性。
40 0
|
19天前
|
自然语言处理 Java 编译器
为什么要看 Python 源码?它的结构长什么样子?
为什么要看 Python 源码?它的结构长什么样子?
20 2
|
19天前
|
Python
源码解密 Python 的 Event
源码解密 Python 的 Event
32 1
|
1月前
|
数据采集 存储 JavaScript
构建您的第一个Python网络爬虫:抓取、解析与存储数据
【9月更文挑战第24天】在数字时代,数据是新的金矿。本文将引导您使用Python编写一个简单的网络爬虫,从互联网上自动抓取信息。我们将介绍如何使用requests库获取网页内容,BeautifulSoup进行HTML解析,以及如何将数据存储到文件或数据库中。无论您是数据分析师、研究人员还是对编程感兴趣的新手,这篇文章都将为您提供一个实用的入门指南。拿起键盘,让我们开始挖掘互联网的宝藏吧!
|
18天前
|
数据采集 前端开发 Python
Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版
Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版
47 0
|
1月前
|
数据采集 JavaScript 前端开发
构建简易Python爬虫:抓取网页数据入门指南
【8月更文挑战第31天】在数字信息的时代,数据抓取成为获取网络资源的重要手段。本文将引导你通过Python编写一个简单的网页爬虫,从零基础到实现数据抓取的全过程。我们将一起探索如何利用Python的requests库进行网络请求,使用BeautifulSoup库解析HTML文档,并最终提取出有价值的数据。无论你是编程新手还是有一定基础的开发者,这篇文章都将为你打开数据抓取的大门。
|
2月前
|
Ubuntu Linux 数据安全/隐私保护
使用Cython库包对python的py文件(源码)进行加密,把python的.py文件生成.so文件并调用
本文介绍了在Linux系统(Ubuntu 18.04)下将Python源代码(`.py文件`)加密为`.so文件`的方法。首先安装必要的工具如`python3-dev`、`gcc`和`Cython`。然后通过`setup.py`脚本使用Cython将`.py文件`转化为`.so文件`,从而实现源代码的加密保护。文中详细描述了从编写源代码到生成及调用`.so文件`的具体步骤。此方法相较于转化为`.pyc文件`提供了更高的安全性。
62 2
|
2月前
|
测试技术 Python
python自动化测试中装饰器@ddt与@data源码深入解析
综上所述,使用 `@ddt`和 `@data`可以大大简化写作测试用例的过程,让我们能专注于测试逻辑的本身,而无需编写重复的测试方法。通过讲解了 `@ddt`和 `@data`源码的关键部分,我们可以更深入地理解其背后的工作原理。
44 1
|
2月前
|
数据采集 JavaScript 前端开发
构建你的第一个Python爬虫:抓取网页数据入门指南
【8月更文挑战第31天】在数字时代,数据是新的石油。本文将引导初学者通过简单的步骤,使用Python编程语言创建一个基础的网络爬虫程序。我们将探索如何从网络上提取信息,并理解背后的原理。无论你是编程新手还是想要扩展你的技术工具箱,这篇文章都将为你提供一条清晰的道路,让你学会编写能够自动获取网络数据的脚本。准备好开始你的网络数据抓取之旅了吗?让我们现在就开始吧!