【发布时间】:2015-10-14 04:26:54
【问题描述】:
我对 REGEX 和 HTML 非常陌生。我知道 BeautifulSoup 是一种处理 HTML 但想尝试正则表达式的方法
我需要在文本中搜索 HTML 标记(我使用 findall)。我在 Stackoverflow 中尝试了多个场景和示例,但只得到 [](空字符串)。这是我尝试过的:
#reHTML = r'(?:<([A-Z][A-Z0-9]*)\b[^>]*>(.*?)</\1>)'
#reHTML = r'\<p>(.*?)\</p>'
#reHTML = r'<p>(.*?)\</p>'
#reHTML = r'<raw[^>]*?>(.*?)</raw>'
reHTML = r'<p>(.*?)</p>'
#reHTML = r'<.*?>'
和:
rHTML = re.compile(reHTML, re.VERBOSE)
HTMLpara = rHTML.findall('http://pythonprogramming.net/parse-website-using- regular-expressions-urllib/', re.IGNORECASE)
显然,我错过了一些东西。请帮忙
【问题讨论】:
-
你的意思是搜索网页的内容吗?现在你只是在搜索 URL。
-
@digitaLink - HTML 标签而不是完整内容。我确定我搞砸了。非常新的正则表达式:)
-
使用像crummy.com/software/BeautifulSoup/bs4/doc这样的html解析器而不是正则表达式。