【发布时间】:2017-12-13 14:43:45
【问题描述】:
我确信这与许多其他 SO 帖子非常接近,但我无法针对我所看到的问题定制这些问题和答案。
当我运行下面显示的代码时,BeautifulSoup 正在返回 []。我一直在搜索有关 SO 的信息,并看到这篇关于解析器和已知错误的文章:Html parsing with Beautiful Soup returns empty list。但是当我尝试其他解析器时,我得到一个错误:
Couldn't find a tree builder with the features you requested: lxml.
我在 Macbook Pro 上使用 Python 2.7.10。有谁知道让不同的解析器工作的方法?或者即使解析器有问题?该站点本身不会将类名分配给div 标签,所以下面只是尝试返回一些东西。
import urllib2, base64, csv
from bs4 import BeautifulSoup
request = urllib2.Request("http://www.oklahomacounty.org/assessor/Searches/AN-R_HistoricalView.asp?Accountno=R120682380")
result = urllib2.urlopen(request)
soup = BeautifulSoup(result.read(), 'html.parser')
div=soup.findAll('div')
print div
【问题讨论】:
-
Couldn't find a tree builder with the features you requested: lxml.- 这个错误听起来就像你没有安装lxml库。 -
如果网站没有分配任何
div类,你为什么期望它返回一些东西而不是一个空列表? -
网站使用
div标签,但标签内没有class name属性。
标签: python parsing beautifulsoup