Python BeautifulSoup CSS选择器

时间:2017-02-25 19:11:51

标签: python beautifulsoup

我的代码与此类似,重复X次

<div class="ABC">     
    <div class="DEF"> 
        <span class="GHI">{TEXT 1}</span>
        <a href="#"><span class="{CLASS}">{TEXT 2}</span> {TEXT 3}</a>
    </div>
    <div class="DEF"> 
        <span class="GHI">{TEXT 1}</span>
        <a href="#"><span class="{CLASS}">{TEXT 2}</span> {TEXT 3}</a>
    </div>
    ...
</div>
<div class="XYZ">     
    <div class="DEF"> 
        <span class="GHI">{TEXT 1}</span>
        <a href="#"><span class="{CLASS}">{TEXT 2}</span> {TEXT 3}</a>
    </div>
    <div class="DEF"> 
        <span class="GHI">{TEXT 1}</span>
        <a href="#"><span class="{CLASS}">{TEXT 2}</span> {TEXT 3}</a>
    </div>
    ...
</div>

如果父类是ABC,我将如何提取每个{TEXT 3}?我有一个解决方案,我美化并得到行号,但想知道是否有一个更整洁的方式

由于

1 个答案:

答案 0 :(得分:0)

这样的东西?

abc = soup.find('div', class_='ABC').find_all("div")
for div in abc:
    t3 = div.find('a').contents[1].strip()
    print (t3)

输出:>>>{TEXT_3} * 2