2017-10-07 26 views
1

我使用beautifulsoup来抓取网站中的不同数据。 我试图抓取源,但不是所有的来源,只是对我很重要的子字符串。在html图像src中查找子字符串的正则表达式

例如,在这个项目中,我想选择/和.png(在本例中是“nyt”)之间的字符串并将其保存在列表中。

<image width="185" height="26" 
xmlns:xlink="http://www.w3.org/1999/xlink" 
xlink:href="https://a1.nyt.com/assets/shell/20160613-034030/images/foundation/logos/nyt-logo-185x26.svg" src="https://a1.nyt.com/assets/shell/20160613-034030/images/foundation/logos/nyt.png" border="0"></image> 

我一直在试图与像re.search几个正则表达式( '[A-Z] *。PNG',SRC)。集团(0),但没有什么效果很好。

谁能告诉我什么是正确的方式来刮这些信息?

+0

你能告诉我们你要提取该字符串的确切部分? – zython

回答

0

如果你想找到src的png格式中的name属性,你可以使用这个正则表达式:

src=\s*(\"|\')[^"']+?([^/]+?)\.png\1 

你必须捕捉第二组中的Python在这种情况下。请点击pythex link来试用。

这里的解释是:

src=\s*字面找到所有的“SRC =”文字后跟任意数量的可选空间

(\"|\')组一张双人床或单引号的。

[^"']+?任何不是双引号或单引号(非贪婪)的东西。

([^/]+?)任何不是正斜杠(非贪婪)的东西。

\.png文字“巴纽”

\1回参考第一组(\"|\')

相关问题