python - 当我通过字典通过类过滤器搜索标签时,无法在 beautifulsoup 中找到标签

标签 python web-scraping beautifulsoup

下面是我的代码。`

import urllib
from BeautifulSoup import *
html=urllib.urlopen('http://yellowpages.sulekha.com/coffee-shops-bars-restaurants_delhi')
soup=BeautifulSoup(html)
tags=soup.findAll("li",{ "class" : "list-item" })

print tags

我希望找到所有具有“list-item”类的“li”标签。当我执行上面的代码时,它返回一个空列表,但是当我将其键入为

tags=soup.findall("li","list-item")

它返回包含所有必需的“li”标签的正确列表。谁能告诉我为什么会发生这种情况?我正在使用 python 2.7 和 beautifulsoup3。

最佳答案

我去查看了您尝试抓取的网站并搜索了list-item。然后我看到了如下所示的内容

<li class="list-item " itemtype="http://schema.org/LocalBusiness" itemscope="">

我看到该类是“list-item”,而不是“list-item”。当我向您的代码添加额外的空间时,它会返回包含所有列表项的列表。

关于python - 当我通过字典通过类过滤器搜索标签时,无法在 beautifulsoup 中找到标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38812918/

相关文章:

Python - 取第二个成员及拆分字符串之外的成员

python - 将 Pyqt GUI 主应用程序作为单独的非阻塞进程运行

python - 使用正则表达式替换 Pandas 数据框中字符串的特定部分

html - 使用css选择器excel vba从网站抓取数据

python - 美汤Python提取数据

python - 查找元素的直接子元素

python - 使用 pytest 和 unittest runner 从两个终端运行测试套件,但仅显示 unittest runner 结果并执行一次

python - Selenium 未加载 TikTok 页面

python - Mechanize 错误

python - 从下拉菜单中抓取选定的值