Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-编辑本地HTML文件-我应该将所有内容编辑为一个字符串还是一行一行的数组?_Python_Html - Fatal编程技术网

Python-编辑本地HTML文件-我应该将所有内容编辑为一个字符串还是一行一行的数组?

Python-编辑本地HTML文件-我应该将所有内容编辑为一个字符串还是一行一行的数组?,python,html,Python,Html,要清楚的是,这不是一个尖锐的问题 我正在尝试自动编辑类似的HTML文件。这涉及到删除标记之间的内容 在本地编辑HTML文件时,是否更容易打开()文件,然后逐行将内容转储到字符串中,以便更容易应用正则表达式 感谢像HTML这样的结构化标记,使用像解析器一样的语法比使用正则表达式更好。这样做的几个原因包括对格式错误的HTML有更好的效果和降低复杂性(您不需要重新发明轮子) 考虑到表面上的问题,使用正则表达式将HTML拆分成几行似乎更容易,这样在应用正则表达式时一次只处理一行。我建议,不要创建自己的模

要清楚的是,这不是一个尖锐的问题

我正在尝试自动编辑类似的HTML文件。这涉及到删除标记之间的内容

在本地编辑HTML文件时,是否更容易打开()文件,然后逐行将内容转储到字符串中,以便更容易应用正则表达式


感谢像HTML这样的结构化标记,使用像解析器一样的语法比使用正则表达式更好。这样做的几个原因包括对格式错误的HTML有更好的效果和降低复杂性(您不需要重新发明轮子)


考虑到表面上的问题,使用正则表达式将HTML拆分成几行似乎更容易,这样在应用正则表达式时一次只处理一行。

我建议,不要创建自己的模板语言(这就是这个任务的意义),而是使用已经存在的许多模板语言中的一种,并用它来执行必要的操作。试试Jinja2、Django模板或Cheetah,看看你喜欢什么。还有很多其他的

谢谢,在我发布这个问题后,我意识到了这一点,希望我不会因此而被激怒。我正在尝试HTMLPasser,但我会查看BeautifulSoup。我不逐行进行的原因是我试图删除标记之间的数据。这些标记由一行或多行分隔。大多数跨越多行的标记都是可以重新组合的简单标记。整个HTML文件中的正则表达式在这些文件很小时可以工作,但随着页面的增长而变得复杂,特别是对于具有大量嵌套div的页面。谢谢,我发现BeautifulSoup的HTMLfile.tag.decompose()非常适合我的需要。