【发布时间】:2013-10-28 22:13:13
【问题描述】:
我必须在 html 源代码中找到图像。我使用 regex 而不是 html.parser 因为我更了解它,但如果你能像孩子一样向我解释如何使用 html 解析,我也很乐意走这条路。
不能用beautifulsoup,我希望我能用,但我必须学会以艰难的方式做到这一点。
我已经阅读了很多关于 regex 和 html (example) 的问题和答案,所以我知道对这个主题的感受。
但听我说完!
这是我的编码尝试(Python 3):
import urllib.request
import re
website = urllib.request.urlopen('http://google.com')
html = website.read()
pat = re.compile (r'<img [^>]*src="([^"]+)')
img = pat.findall(html)
我在 regex101.com 上仔细检查了我的正则表达式,它可以找到 img 链接,但是当我在 IDLE 上运行它时,出现语法错误并一直突出显示插入符号。为什么?
我正朝着正确的方向前进……是吗?
更新: 嗨,我在想我可能会得到简短的快速回答,但似乎我可能会触动社区的神经。
我绝对是新手,编程很糟糕,没有办法。我一直在阅读所有 cmets,我非常感谢用户向我展示的所有帮助和耐心。
【问题讨论】:
-
您遇到语法错误,因为...这是无效的语法(提示:
re.compile需要一个字符串)。但是您应该只看一下 BeautifulSoup html 解析器,这里和其他地方都有足够的示例可以帮助您入门。 -
@user2799617 这个人提出了一个有效的问题,向我们展示了他的尝试,并在 regex101(我们需要一个链接)上进行了检查。我非常怀疑他做错了任何事情。
-
@pythonintraining 对于 gz 问题,我猜您使用的是 Windows。安装 7Zip 之类的实用程序。
-
@user2799617 Not always.
-
嘿 user2799617,你不需要骑我,我已经骑得够狠了。我认为 stackoverflow 的目的是帮助像我这样的人,如果你想继续咆哮,去 reddit 或 craigslist。
标签: python html regex python-3.x