优化python链接匹配正则表达式

2024-10-01 22:40:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个正则表达式,links = re.compile('<a(.+?)href=(?:"|\')?((?:https?://|/)[^\'"]+)(?:"|\')?(.*?)>(.+?)</a>',re.I).findall(data)

在某些html中查找链接,对某些html需要很长时间,有什么优化建议吗?在

它窒息的是http://freeyourmindonline.net/Blog/


Tags: httpsrehttpdatanet链接htmlblog
3条回答

你为什么不使用html解析器?使用beauthoulsoup之类的东西,您可以获得所有链接,而不必使用那样难看的regex。在

如何更直接地处理href?在

re_href = re.compile(r"""<\s*a(?:[^>]+?)href=("[^"]*(\\"[^"]*)*"|'[^']*(\\'[^']*)*'|[^\s>]*)[^>]*>""", re.I)

这需要0.007秒,而你的findall在我的电脑上需要38.694秒。在

我建议在这个任务中使用BeautifulSoup。在

相关问题 更多 >

    热门问题