我有一小部分汤标签元素,我使用Selenium&拉出BeautifulSoup。
<footer>
    <p class="tags environment-tags">Environment:
      <span class="tag environment-tag">Desert</span>
    </p>
    <p class="source monster-source">Basic Rules
      <span class="page-number">, pg. 334</span>
    </p>
</footer>
我试图从 p 元素中获取文本,但每次我尝试它都会获取跨度。到目前为止,这是我尝试过的:
for p in Environment.findAll('p'):
    print(p.text)
我也尝试使用提取信息,.extract()但这似乎对我不起作用。
uj5u.com热心网友回复:
您可以使用.contents和访问第 0 个元素:
for tag in soup.find_all("p"):
    print(tag.contents[0].strip())
输出:
Environment:
Basic Rules
或者通过您的尝试,您可以通过以下方式洗掉<span>' 使用.extract():
for tag in soup.select("p span"):
    tag.extract()
print(soup.prettify())
输出:
<footer>
 <p class="tags environment-tags">
  Environment:
 </p>
 <p class="source monster-source">
  Basic Rules
 </p>
</footer>

 
							 
										
										 
										
										 
										
										
										 
										
										 
										
										 
										
										
0 评论