python beautifulsoup搜索多行

时间:2016-08-30 18:55:56

标签: python beautifulsoup

我正在尝试从下面显示的输入代码中搜索财务页面的市盈率。所以,基本上我试图提取“48.98'来自消息来源。 由于市场上限,账面价值等结构相同,我无法为汤添加正确的代码。查看

非常感谢soup.find代码的正确结构。 我是新手,对不起,如果我问一些非常基本的东西.. 提前致谢 !

<div class="FL" style="width:210px; padding-right:10px">
<div class="PA7 brdb">
<div class="FL gL_10 UC">MARKET CAP (Rs Cr)</div>
<div class="FR gD_12">41,364.28</div>
<div class="CL"></div>
</div>
<div class="PA7 brdb">
<div class="FL gL_10 UC">P/E</div>
<div class="FR gD_12">**48.98**</div>
<div class="CL"></div>
</div>
<div class="PA7 brdb">
<div class="FL gL_10 UC">BOOK VALUE (Rs)</div>
<div class="FR gD_12">147.24</div>
<div class="CL"></div>
</div>
<div class="PA7 brdb">
<div class="FL gL_10 UC">DIV (%)</div>
<div class="FR gD_12">1000.00%</div>
<div class="CL"></div>
</div>
<div class="PA7 brdb">
<div class="FL gL_10 UC">Market Lot</div>
<div class="FR gD_12">1</div>
<div class="CL"></div>
</div>
<div class="PA7 brdb">
<div class="FL gL_10 UC">INDUSTRY P/E</div>
<div class="FR gD_12">60.95</div>
<div class="CL"></div>
</div>
</div>

1 个答案:

答案 0 :(得分:4)

使用文字找到“P / E”的div并获得下一个div:

price = soup.find("div", class_="FL gL_10 UC", text="P/E").find_next("div").text

如果它始终是css类 FR gD_12 的第二个div,你也可以获得前两个并提取第二个

price = soup.select("div.FR.gD_12", limit=2)[1].text