我试图从一个非常长的html文件中挑选图片的网址。该文件看起来是这样的:从HTML中挑选图片网址
...Lots_of_html><a href=somelink.com>Human Readable Text</a><img src="http://image.com">....
我想挑选出从上面的HTML的http://image.com,我试过,没有运气以下:
sed -n ‘s%.*src=%%;s%\".*%%p’ image_urls.txt
sed -n ‘s%.*src=%%;s%\".*%%p’ image_urls.txt
import re
rex = re.compile(r'src=.(.*?)>',re.S|re.M)
data="<long html string>"
match = rex.match(data)
我没有得到在正则表达式事物方面有很多经验,所以我想在上面有一些基本的错误。我会很感激任何帮助,但特别是我希望得到一个sed命令,因此很容易将其集成到bash脚本中。
在此先感谢。
基本错误是试图用正则表达式解析HTML文档使用HTML解析器 – Quentin
别编写你自己的代码来解析HTML,当然不要用正则表达式来解析它。解析HTML是一个解决的问题,并且有大量的Python库不存在这里已经被写入,测试和调试,这样你就不必编写,测试和调试你自己的代码来完成它。 –