【发布时间】:2013-12-23 20:39:17
【问题描述】:
我正在尝试使用 BeautifulSoup4 和 Python 2.7.6 解析一些 html,但字符串返回“None”。我要解析的 HTML 是:
<div class="booker-booking">
2 rooms
·
USD 0
<!-- Commission: USD -->
</div>
我拥有的python的sn-p是:
data = soup.find('div', class_='booker-booking').string
我也试过以下两种:
data = soup.find('div', class_='booker-booking').text
data = soup.find('div', class_='booker-booking').contents[0]
两者都返回:
u'\n\t\t2\xa0rooms \n\t\t\xb7\n\t\tUSD\xa00\n\t\t\n
我最终试图将第一行放入一个仅显示“2 个房间”的变量中,将第三行放入另一个仅显示“USD 0”的变量中。
【问题讨论】:
-
“class”后面应该有一个“_”吗?另外,我没有看到这里返回任何“无”...
-
是的。这是 beautifulsoup 识别 DIV 类的方式,而不是 python 认为它是一个 python 类。
-
soup.find("div", {"class": "booker-booking"}) 怎么样?
-
也返回“无”。
-
但你说他们返回 u'\n\t\t2\xa0rooms \n\t\t\xb7\n\t\tUSD\xa00\n\t\t\n',其中是一个 unicode 字符串...
标签: python parsing html-parsing beautifulsoup