python 提取红楼梦第一章得到五言律诗和七言律诗(正则表达式)

简介: python 提取红楼梦第一章得到五言律诗和七言律诗(正则表达式)
import requests
from re import findall

 

#1.正则表达式:年月日

# (1|2)[0-9][0-9][0-9]-(0[1-9]|1[012]|[1-12])-(0[1-9]|1[0-9]|2[0-9]|3[01]|[1-31])


# 2.《红楼梦》五言和七言诗

# 《红楼梦》第一回的网页

#get()里面是第一回的网址


string = requests.get('https://www.xyyuedu.com/gdmz/sidamingzhu/hlmeng/21651.html') \
    .text.encode("ISO-8859-1").decode('gbk').encode('utf8').decode('utf8')
strings = findall(r'<p>((?:.|\n)*?)</p>', string)
str1 = str(strings)
str1 = findall(r'(?<=\S)*[\u4e00-\u9fa5]+[?。,:\-;]*(?=\S)*', str1)
str2 = "".join(str1)
str2 = "".join(str2.split())
print(str2) #string是网页内容字符串

# 五言诗

five = r'[\u4e00-\u9fa5]{5}[,?][\u4e00-\u9fa5]{5}[,?。][\u4e00-\u9fa5]{5}[,?。][\u4e00-\u9fa5]{5}[?。]'
fiveCharacter = findall(five, str2)
print(fiveCharacter)

# 七言诗

seven = r'[\u4e00-\u9fa5]{7}[,?][\u4e00-\u9fa5]{7}[,?。][\u4e00-\u9fa5]{7}[,?。][\u4e00-\u9fa5]{7}[?。]'
sevenCharacter = findall(seven, str2)
print(sevenCharacter)
相关文章
|
5月前
|
Python
"揭秘!Python如何运用神秘的正则表达式,轻松穿梭于网页迷宫,一键抓取隐藏链接?"
【8月更文挑战第21天】Python凭借其强大的编程能力,在数据抓取和网页解析领域表现出高效与灵活。通过结合requests库进行网页请求及正则表达式进行复杂文本模式匹配,可轻松提取网页信息。本示例展示如何使用Python和正则表达式解析网页链接。首先确保已安装requests库,可通过`pip install requests`安装。接着,利用requests获取网页内容,并使用正则表达式提取所有`&lt;a&gt;`标签的`href`属性。
61 0
|
2月前
|
Python
在Python中,可以使用内置的`re`模块来处理正则表达式
在Python中,可以使用内置的`re`模块来处理正则表达式
71 5
|
2月前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
3月前
|
Python
【收藏备用】Python正则表达式的7个实用技巧
【收藏备用】Python正则表达式的7个实用技巧
37 1
|
3月前
|
数据安全/隐私保护 Python
Python实用正则表达式归纳
Python实用正则表达式归纳
24 3
|
3月前
|
Python
Python 正则表达式高级应用指南
正则表达式是文本模式匹配的强大工具,Python 的 `re` 模块支持其操作。本文介绍正则表达式的高级应用,包括复杂模式匹配(如邮箱、电话号码)、分组与提取、替换操作、多行匹配以及贪婪与非贪婪模式的区别。通过示例代码展示了如何灵活运用这些技巧解决实际问题。
37 7
|
3月前
|
JavaScript 前端开发 Scala
Python学习十:正则表达式
这篇文章是关于Python中正则表达式的使用,包括re模块的函数、特殊字符、匹配模式以及贪婪与非贪婪模式的详细介绍。
27 0
|
3月前
|
数据采集 开发者 Python
Python正则表达式之re.compile函数
`re.compile`是Python正则表达式处理中一个强大的工具,它通过预先编译正则表达式,不仅提升了执行效率,还增强了代码的组织性和可读性。掌握其使用,对于涉及文本分析、数据清洗、日志处理等领域的Python开发者来说,是非常必要的技能。正确并高效地应用这一功能,可以显著提升程序的性能和维护性。
191 0
|
4月前
|
索引 Python
30天拿下Python之正则表达式
30天拿下Python之正则表达式
23 0
|
4月前
|
数据采集 Python
Python正则表达式提取车牌号
Python正则表达式提取车牌号
55 0