Python Beautiful Soup find标记具有类的确切字符串值

2024-06-16 09:45:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我花了几个小时试图找到一个解决方案,我找到的代码要么返回包含我试图匹配的某个类的所有标记,要么包含我所有的类,但其中有一些额外的类,但我希望这些类完全匹配。在

以下解决方案对我来说并不像它想象的那样有效:

也可以搜索class属性的确切字符串值:

css_soup.find_all("p", class_="body strikeout")

我可以在本地从HTML sample获取以下标记,但对于我在Complete code部分中请求的页面却无法获得:

^{pr2}$

HTML示例:

<ul class="mvn listInline"> 
    <li class="mbn h4 typeEmphasize">$325,000</li>
    <li class="mbn h7">
         3 bd 2 ba 2,080 sqft 
    </li>
</ul>

<ul class="mvn listInline withotherclasses"> 
     <li class="mbn h4 typeEmphasize">$325,000</li>
     <li class="mbn h7">
         3 bd 2 ba 2,080 sqft
     </li>
</ul>

<ul class="mvn onlymvn"> 
     <li class="mbn h4 typeEmphasize">$325,000</li>
     <li class="mbn h7">
         3 bd 2 ba 2,080 sqft
     </li>
</ul>

完整代码:

page = requests.get('http://www.trulia.com/for_sale/Anchorage,AK/2_p')
soup_page = BeautifulSoup(page.text,'html.parser') 

for ul in soup_page.find_all("ul", class_="mvn listInline"):
    print ul 

Tags: pageli解决方案ulh4bdclasssoup