Skip to main content
 首页 » 编程设计

python-3.x之如何在Python中使用BeautifulSoup从标记中提取innerHTML

2025年01月19日14unruledboy

我正在尝试使用以下代码从标记中提取innerHTML:

theurl = "http://na.op.gg/summoner/userName=Darshan" 
thepage = urlopen(theurl) 
soup = BeautifulSoup(thepage,"html.parser") 
rank = soup.findAll('span',{"class":"tierRank"}) 

但是,我得到 [< span class="tierRank" > Master < /span >]代替。
我要显示的只是值“Master”。

使用 soup.get_text而不是 soup.findall不起作用。

我尝试将 .text.string添加到最后一行的末尾,但这也不起作用。

请您参考如下方法:

soup.findAll('span',{"class":"tierRank"})返回与<span class="tierRank">匹配的元素列表。

  • 您需要该列表中的第一个元素。
  • 您需要该元素中的innerHtml,可以通过decode_contents()方法进行访问。

  • 全部一起:
    rank = soup.findAll('span',{"class":"tierRank"})[0].decode_contents() 
    

    这会将“Master”存储在 rank中。