我使用的是Windows XP上的Python 2.7.3,我使用的是Pyscripter 2.5.3.0
我正在尝试运行漂亮的汤,并使用以下测试代码
import urllib2
from bs4 import BeautifulSoup
page = urllib2.urlopen("http://www.google.com")
soup = BeautifulSoup(page)
print soup.prettify()代码在dammit.py中停止。错误是:
Message File Name Line Position
Traceback
<module> D:\Python\TestBS.py 19
<module> C:\Python27\lib\site-packages\bs4\__init__.py 29
<module> C:\Python27\lib\site-packages\bs4\builder\__init__.py 4
<module> C:\Python27\lib\site-packages\bs4\element.py 5
<module> C:\Python27\lib\site-packages\bs4\dammit.py 49
EntitySubstitution C:\Python27\lib\site-packages\bs4\dammit.py 70
_populate_class_variables C:\Python27\lib\site-packages\bs4\dammit.py 57
NameError: global name 'codepoint2name' is not defined在代码的这一部分
class EntitySubstitution(object):
"""Substitute XML or HTML entities for the corresponding characters."""
def _populate_class_variables():
lookup = {}
reverse_lookup = {}
characters_for_re = []
for codepoint, name in list(codepoint2name.items()):发布于 2012-11-12 13:12:21
这是BeautifulSoup中的一个错误。显然,作者错过了从“htmlentitydefs”模块导入符号。因此,您可以通过将导入添加到BeautifulSoup代码来自己修复此问题。此外:联系BeautifulSoup作者或提交错误报告。
https://stackoverflow.com/questions/13336724
复制相似问题