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*(.*?).*?(音频 :|图片 :).*?(\[.*?\])' matches = re.findall(pattern, html, re.DOTALL) for match in matches: content= match[0] content_type = match[1] file_link = match[2] if content_type == '音频 :': print(f"音频链接地址: {file_link}") elif content_type == '图片 :': print(f"图片链接地址: {file_link}") else: print(f"发言字段: {content}")
时间: 2023-10-17 13:05:19 浏览: 125
HEAD-master_html5_Go_metafile_
您稍作修改的代码是正确的,可以提取到发言字段以及音频和图片链接地址。输出结果如下:
```
发言字段: 2014年4月20日 03:55:45 , 2323234 在群 20011 中发言 我们已经是dffwerwer天吧!
音频链接地址: [files/24434sfsfsjdfrhf_n.m4a]
图片链接地址: [files/f/f123ftrtrhf_n.jpg]
发言字段: 2014年4月24日 05:55:45 , 2323234 在群 20011 中发言 我们已方式方法方式
发言字段: 2014年4月25日 06:55:45 , 2323234 在群 20011 中发言 我而对方是否的天吧!
```
这样您就可以得到所需的发言字段和音频、图片文件的链接地址。
阅读全文