我正在尝试创建一个程序,可以“找到”指定的HTML标记,并用其他东西“替换”这些标记(处理作为字符串导入的HTML文本)。你知道吗
免责声明:我对python非常陌生,所以可能遗漏了一些明显的东西。 此外,基于之前的帖子主题类似于此,我猜测使用正则表达式模块可能最适合这个项目(不过我会采纳其他建议)。你知道吗
以下是我的“输入”文本:
<p align="left"><span style="font-family: Arial,Arial; font-size: 12px; color: #ffffff;">Example Company | Technical How-To</span></p>
以下是我想要的“输出”文本:
<p>Example Company | Technical How-To</p>
以下是我的“输出”文本:
</p>
下面是我用来得到答案的python代码:
while True:
import re
print("Enter HTML Text Below")
original = input("")
def cleaner(raw_html):
cleantextp = re.sub('<p.*?>', '<p>', raw_html)
cleantextspan1 = re.sub('<span.*?>', '', cleantextp)
cleantextspan2 = re.sub('<.*?/span>', '', cleantextspan1)
return cleantextspan2
if len(original) > 0:
print(cleaner(original))
else:
print("Please try again")
对我来说,奇怪的是,当我把我定义的函数“分离”出来,让它一次“清理”一个指定的标签时,它似乎工作了。示例:
while True:
import re
print("Enter HTML Text Below")
original = input("")
def cleaner(raw_html):
cleantextp = re.sub('<p.*?>', '<p>', raw_html)
return cleantextp
if len(original) > 0:
print(cleaner(original))
else:
print("Please try again")
这段代码让我得到这个文本(不是有意删除<span>
标记,但也不会再次返回</p>
):
<p><span style="font-family: Arial,Arial; font-size: 12px; color: #ffffff;">Example Company | Technical How-To</span></p>
所以基本上,我被困住了。我尝试过几种不同的方法,包括为每个标记定义一个单独的“clean”函数,并按顺序遍历每个函数的“input”文本,但我没有任何运气。有什么建议吗?你知道吗
美女们,只要用谷歌搜索一下,就可以了()
使用Python的beautfulsoup library。(您需要先安装它)。你知道吗
网络上有很多例子,可以准确地找到你需要的东西
相关问题 更多 >
编程相关推荐