0

我正在用 BeautifulSoup 解析几个单独的页面。

解析了几个页面,并且在特定站点上达到了解析失败的程度。

我正在寻找提取以下标签:

<span class="black20b">$27.99</span>

我使用以下选择器来获取标签。事实上,我尝试了两种不同的方法并得到了相同的结果:

price = individual_page.find("span", {"class","black20b"})
price = ''.join(price.findAll(text=True))  

我决定在执行连接之前在几个文件上打印价格的结果,结果如下:

...
Downloading: File...
<span class="black20b">$7.79</span>

Downloading: File...
<span class="black20b">$27.99</span>

Downloading: File...
None

最后一个选择器返回“无”。检查该特定情况,结果表明跨度因某些特定原因而颜色不同。换句话说,该标签不存在。

我该如何处理该异常?

4

1 回答 1

2

为避免在结果为 None 时调用该函数:

price = individual_page.find("span", {"class","black20b"})
if price:
    print ''.join(price.findAll(text=True)) 
于 2013-04-27T11:53:15.030 回答