python - AttributeError:使用 BeautifulSoup 时,“LXMLTreeBuilder”对象没有属性“DEFAULT_NSMAPS_INVERTED”
问题描述
我正在尝试通过在 python 中使用 BeautifulSoup 从 URL 获取一些数据,但是当我运行最后一个命令时,
soup = BeautifulSoup(content)
我一直收到这个错误,告诉我“LXMLTreeBuilder”对象没有属性'DEFAULT_NSMAPS_INVERTED'
我该如何解决这个问题?
这是我的代码:
import urllib.request as urllib2
from bs4 import BeautifulSoup
import requests
url = 'https://www.ucf.edu/'
content = urllib2.urlopen(url).read()
soup = BeautifulSoup(content)
解决方案
您没有在BeautifulSoup
构造函数中指定解析器。试着放在html.parser
那里:
import urllib.request as urllib2
from bs4 import BeautifulSoup
import requests
url = 'https://www.ucf.edu/'
content = urllib2.urlopen(url).read()
soup = BeautifulSoup(content, 'html.parser') # <-- specify parser here
print(soup.prettify())
编辑:确保您安装了最新版本BeautifulSoup
(可选的最新版本lxml
)。我在版本beautifulsoup4==4.8.0
和lxml==4.3.4
推荐阅读
- r - 在 R Shiny 中,根据用户输入更新对象
- excel - 如何根据另一个单元格中的输入要求不同的文本长度
- java - 如何将变量从php传递到java jar文件
- azure-machine-learning-service - Torchvision 0.3.0 用于在 AML 服务上训练模型
- python-3.x - 使用递归的数字的奇数和偶数之和
- javascript - 浏览器拒绝 javascript play()
- javascript - 如何通过 JS map 函数传递 If 子句
- javascript - 重定向到另一个页面后如何保留吐司布尔玛
- css - 名为“stylesheet.css”的文件是必要的/强制性的吗?
- dropdown - 使用一个单元格将值添加到命名范围