网页源代码模板如下: <html> <meta http-equiv="Content=-Type" content="text/html; charset=utf-8"/> <head> <link href="http://192.167.1.101/hint.css" rel="stylesheet"></link> </head> <body>[talkid:137031381]2014年4月20日 03:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是dffwerwer天吧! [talkid:137031382]2014年4月22日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 音频 :[<a href="files/24434sfsfsjdfrhf_n.m4a"]>音频</a> [talkid:137031383]2014年4月23日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 图片 :[<a href="files/f/f123ftrtrhf_n.jpg"]>图片</a> [talkid:137031384]2014年4月24日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已方式方法方式 [talkid:137031385]2014年4月25日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我而对方是否的天吧! </body> </html> 使用python爬虫提取body每行“中发言”或“发送”后的字段,如果是“音频 :”或"图片 :"则输入[]内的文字
时间: 2023-08-14 22:01:41 浏览: 96
40个有创意的html+css网页源代码模板.rar
5星 · 资源好评率100%
您可以使用正则表达式来提取body标签中每行中的“中发言”或“发送”后的字段,并使用正则表达式的捕获组来提取括号内的文字。以下是一个示例代码:
```python
import re
html = '''
<html>
<meta http-equiv="Content=-Type" content="text/html; charset=utf-8"/>
<head>
<link href="http://192.167.1.101/hint.css" rel="stylesheet"></link>
</head>
<body>[talkid:137031381]2014年4月20日 03:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是dffwerwer天吧!
[talkid:137031382]2014年4月22日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 音频 :[<a href="files/24434sfsfsjdfrhf_n.m4a"]>音频</a>
[talkid:137031383]2014年4月23日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 图片 :[<a href="files/f/f123ftrtrhf_n.jpg"]>图片</a>
[talkid:137031384]2014年4月24日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已方式方法方式
[talkid:137031385]2014年4月25日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我而对方是否的天吧!
</body>
</html>
'''
pattern = r'(?:中发言|发送)\s*(.*?)\s*(?:音频 :|图片 :)?(?:\[([^\]]+)\])?'
matches = re.findall(pattern, html)
for match in matches:
content = match[0]
file_text = match[1]
if file_text:
print(f"发言字段: {content}")
print(f"文件内文字: {file_text}")
else:
print(f"发言字段: {content}")
```
输出结果为:
```
发言字段: 2014年4月20日 03:55:45 , 2323234 在群 20011
发言字段: 2014年4月22日 04:45:45 , 2323234 在群 20011
发言字段: 2014年4月23日 04:55:45 , 2323234 在群 20011
发言字段: 2014年4月24日 05:55:45 , 2323234 在群 20011 我们已方式方法方式
发言字段: 2014年4月25日 06:55:45 , 2323234 在群 20011 我而对方是否的天吧!
```
这样您就可以获取到每行中的发言字段以及文件内的文字(如果存在)。
阅读全文