PythonFind标记具有类的精确字符串值
我花了几个小时试图找到一个解决方案,我找到的代码要么返回包含我试图匹配的一个类的所有标记,要么包含我的所有类,但其中包含一些额外的类,但我希望这些类完全匹配 以下解决方案对我不起作用: 您还可以搜索class属性的确切字符串值:PythonFind标记具有类的精确字符串值,python,python-2.7,beautifulsoup,Python,Python 2.7,Beautifulsoup,我花了几个小时试图找到一个解决方案,我找到的代码要么返回包含我试图匹配的一个类的所有标记,要么包含我的所有类,但其中包含一些额外的类,但我希望这些类完全匹配 以下解决方案对我不起作用: 您还可以搜索class属性的确切字符串值: css_soup.find_all("p", class_="body strikeout") 我可以在本地从HTML示例获取以下标记,但无法获取我在Complete code部分请求的页面的标记: <ul class="mvn listInline">.
css_soup.find_all("p", class_="body strikeout")
我可以在本地从HTML示例
获取以下标记,但无法获取我在Complete code
部分请求的页面的标记:
<ul class="mvn listInline">..</ul>
soup\u页面。find\u all(“ul”,class=“mvn listInline”)
只能查找具有确切类属性的ul
,您需要使用css选择器:
soup.select(“ul.mvn.listInline”)
soup\u页面。find\u all(“ul”,class=“mvn listInline”)
只能查找具有确切类属性的ul
,您需要使用css选择器:
soup.select(“ul.mvn.listInline”)
您能提供一个您面临问题的html示例吗?- $325000
- 3 bd 2 ba 2080平方英尺>3 bd 2 ba 2080平方英尺
- …
- $325000
- 3 bd 2 ba 2080平方英尺
- 325000美元“>3 bd 2 ba 2080平方英尺
- …
mvn listInline
的元素。不要相信督察。元素/属性可以通过javascript添加,在这种情况下,BeautifulSoup无法解析这些元素/属性。我明白了,这是有道理的。谢谢你帮我。我将尝试一种不同的方法来解决我原来的问题。这就是我想要的。它适用于本地html文件,但不适用于我请求的页面。不知道是什么原因。我可以在源代码检查器中看到带有这两个类的标记。@AaronMoose我在该页面上看不到任何类名为mvn listInline
的元素。不要相信督察。元素/属性可以通过javascript添加,在这种情况下,BeautifulSoup无法解析这些元素/属性。我明白了,这是有道理的。谢谢你帮我。我将尝试不同的方法来解决我原来的问题。
<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