我正在开发一个自动程序,使用BeautifulSoup和Python 3识别网站徽标。第一步,我正在寻找图像名称中带有“徽标”一词的图像。它确实很有效。但是,我想将其扩展为可能包含术语图像的图像,或者包含在带有标识的类/ id /属性的链接中,或者甚至更深地隐藏在包含一类'的div的链接中商标'。例如:
<div id="logo">
<a href="http://www.mexgrocer.com/">
<img src="http://ep.yimg.com/ca/I/mex-grocer_2269_22595" width="122" height="72" border="0" hspace="0" vspace="0" alt="Mexican Food">
</a>
</div>
我现在的代码是:
img = soup.find("img",src=re.compile(r'logo',re.I))
如何展开它以搜索所有父标记属性?
答案 0 :(得分:1)
使用find_all
查找整个文档中的所有特定标记。你可以试试这个
from bs4 import Beautifulsoup
import urllib2
soup = BeautifulSoup(urllib2.urlopen('your_url').read())
for x in soup.find_all(id='logo'):
try:
if x.name == 'img':
print x['src']
except:pass
如果你想在课堂上搜索,只需使用class ='logo'
答案 1 :(得分:1)
此问题的答案需要更新为:
create analytics_data_export.events_normalized AS
SELECT .....
FROM
`analytics_xxxxxx.events_*
答案 2 :(得分:0)
您可以使用findall(标记,属性),例如:
from bs4 import Beautifulsoup
soup = BeautifulSoup(f)
var =soup.find_all("font",color="#990000") //all <font color=#990000></font>
var2 = soup.find_all("a",class_="LinkIndex") // all <a class="LinkIndex"></a>