因为正则表达式吓唬我,我试图找到一种方法,从Python中的字符串中删除所有的HTML标签和解决HTML实体。过滤掉HTML标签和蟒蛇解决实体
回答
如何解析HTML数据和解析器的帮助提取数据?
描述虽然我与卢卡斯同意,正则表达式是不是所有的吓人,我还以为你应该用专门的HTML解析器去的作者。这是因为HTML标准足够大(特别是如果你想任意解析从互联网上取下的“HTML”页面),你需要编写大量的代码来处理角落案例。看来python includes one out of the box。
您也应该检查python bindings for TidyLib可以清理破碎的HTML,使得任何HTML解析更高的成功率。
您可能需要比正则表达式更复杂的东西。网页通常有尖括号不属于标签的一部分,就像这样:
<div>5 < 7</div>
剥离与正则表达式的标签将返回字符串“5”和治疗
< 7</div>
为单一标签并将其剥离。
我建议寻找已经编写的代码,这是否适合你。我做了一个搜索,发现这个:http://zesty.ca/python/scrape.html它也可以解析HTML实体。
使用BeautifulSoup!这对你来说是完美的,你有可靠的美德标记,需要从中得到合理的东西。只需传入原始文本,提取所有字符串标签并加入即可。
,代码如下:''.join(BeautifulSoup(value,convertEntities = BeautifulSoup.HTML_ENTITIES).findAll(text = True)) – 2011-01-03 20:23:29
正则表达式是不可怕的,但写自己的正则表达式剥离HTML是到了疯狂的可靠路径(并且它也行不通)。遵循智慧之路,并使用许多优秀的HTML解析库之一。
Lucas的例子也被打破,因为‘子’不是Python字符串的方法。你必须“导入re”,然后调用re.sub(pattern,repl,string)。但是这并不是那里,因为你的问题的正确答案不涉及写任何正则表达式。
望着感的人的数量都在这里展示在其他的答案,我会说,可能使用正则表达式是不是适合自己情况的最好的主意。去的东西尝试和测试,并把我以前的答案的示威,正则表达式不必是吓人。
如果使用- 1. 蟒蛇用实体解析html
- 2. 蟒蛇HTML标签提取
- 3. 蟒蛇解决方案
- 4. 蟒蛇过滤器重写过滤
- 5. 立交API - 过滤掉非空标签
- 6. 蟒蛇情节过滤GROUPBY
- 7. 删除HTML标签和HTML实体
- 8. 蟒蛇 - XML/HTML解析problam
- 9. 蟒蛇BeautifulSoup搜索标签
- 10. 蟒蛇搜索标签
- 11. 过滤掉标点符号
- 12. 蟒蛇:从HTML
- 13. SQL用户定义的函数去掉HTML标签并替换HTML实体
- 14. 如何解决编码蟒蛇
- 15. 过滤器超链接 - 蟒蛇
- 16. 蟒蛇过滤器不工作
- 17. 火花+蟒蛇+过滤问题
- 18. 过滤掉行
- 19. 过滤掉表
- 20. 输入被覆盖掉了蟒蛇
- 21. 在熊猫蟒蛇中掉落NaN
- 22. 蟒蛇 - 100个硬币扔掉
- 23. 如何过滤掉过近的坐标?
- 24. 蟒蛇提取HTML标签属性没有正则表达式
- 25. 如何检测空格,特殊字符的HTML标签蟒蛇
- 26. 分隔符标签的蟒蛇
- 27. 蟒蛇硒无法点击标签
- 28. 蟒蛇 - 改变Tkinter的标签
- 29. 在硒蟒蛇中查找标签
- 30. 蟒蛇中没有标签的图例
实际上链接深入Python应该是[这](HTTP:// diveintopython的。org/html_processing/index.html) – 2008-09-02 09:54:12