我花了几个小时试图找到一个解决方案,我找到的代码要么返回包含我试图匹配的某个类的所有标记,要么包含我所有的类,但其中有一些额外的类,但我希望这些类完全匹配。在
以下解决方案对我来说并不像它想象的那样有效:
也可以搜索class属性的确切字符串值:
css_soup.find_all("p", class_="body strikeout")
我可以在本地从HTML sample
获取以下标记,但对于我在Complete code
部分中请求的页面却无法获得:
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
soup_page.find_all("ul", class_="mvn listInline")
只能找到ul
与类属性完全相同mvn listInline
您需要使用css选择器:soup.select("ul.mvn.listInline")
相关问题 更多 >
编程相关推荐