Windows8下安装Python的BeautifulSoup

yipeiwu_com6年前Python基础

运行环境:Windows 8.1
Python:2.7.6

在安装的时候,我使用的pip来进行安装,命令如下:

复制代码 代码如下:

pip install beautifulsoup4

运行的时候,报错如下:
复制代码 代码如下:

Exception:
Traceback (most recent call last):
  File "J:\Program Files (x86)\Python\Python27\lib\site-packages\pip\basecomm
.py", line 122, in main
    status = self.run(options, args)
  File "J:\Program Files (x86)\Python\Python27\lib\site-packages\pip\commands
stall.py", line 278, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bu
e=self.bundle)
  File "J:\Program Files (x86)\Python\Python27\lib\site-packages\pip\req.py",
ne 1229, in prepare_files
    req_to_install.run_egg_info()
  File "J:\Program Files (x86)\Python\Python27\lib\site-packages\pip\req.py",
ne 292, in run_egg_info
    logger.notify('Running setup.py (path:%s) egg_info for package %s' % (sel
etup_py, self.name))
  File "J:\Program Files (x86)\Python\Python27\lib\site-packages\pip\req.py",
ne 265, in setup_py
    import setuptools
  File "build\bdist.win-amd64\egg\setuptools\__init__.py", line 11, in <modul
    from setuptools.extension import Extension
  File "build\bdist.win-amd64\egg\setuptools\extension.py", line 5, in <modul
  File "build\bdist.win-amd64\egg\setuptools\dist.py", line 15, in <module>
  File "build\bdist.win-amd64\egg\setuptools\compat.py", line 19, in <module>
  File "J:\Program Files (x86)\Python\Python27\lib\SimpleHTTPServer.py", line
, in <module>
    class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
  File "J:\Program Files (x86)\Python\Python27\lib\SimpleHTTPServer.py", line
8, in SimpleHTTPRequestHandler
    mimetypes.init() # try to read system mime.types
  File "J:\Program Files (x86)\Python\Python27\lib\mimetypes.py", line 358, i
nit
    db.read_windows_registry()
  File "J:\Program Files (x86)\Python\Python27\lib\mimetypes.py", line 258, i
ead_windows_registry
    for subkeyname in enum_types(hkcr):
  File "J:\Program Files (x86)\Python\Python27\lib\mimetypes.py", line 249, i
num_types
    ctype = ctype.encode(default_encoding) # omit in 3.x!
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb0 in position 1: ordin
not in range(128)

Storing debug log for failure in C:\Users\Administrator\pip\pip.log

解决方法:打开C:\Python27\Lib下的 mimetypes.py 文件,找到大概256行的

复制代码 代码如下:

default_encoding = sys.getdefaultencoding()

改成:
复制代码 代码如下:

if sys.getdefaultencoding() != 'gbk':
    reload(sys)
    sys.setdefaultencoding('gbk')
default_encoding = sys.getdefaultencoding()

安装成功后,验证是否安装成功:

复制代码 代码如下:

C:\Users\Administrator>python
Python 2.7.6 (default, Nov 10 2013, 19:24:24) [MSC v.1500 64 bit (AMD64)] on 32
Type "help", "copyright", "credits" or "license" for more information.
>>> from bs4 import BeautifulSoup
>>> exit()

如果“from bs4 import BeautifulSoup”没有报错的话,则说明安装成功,否则,将报类似错误如下:
复制代码 代码如下:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named bs4

相关文章

python 文件查找及内容匹配方法

需求:程序开发中有大量的接口,但在实际的使用中有一部分是没有使用的,在开发的程序中匹配这些接口名,找到哪些接口从没有使用过。将这些没有使用过的接口名保存下来。 代码结构: 结构解析: 1...

python动态加载包的方法小结

本文实例总结了python动态加载包的方法。分享给大家供大家参考,具体如下: 动态加载模块有三种方法 1. 使用系统函数__import_() stringmodule = __im...

python 实现矩阵上下/左右翻转,转置的示例

python中没有二维数组,用一个元素为list的list(matrix)保存矩阵,row为行数,col为列数 1. 上下翻转:只需要把每一行的list交换即可 for i in r...

Python企业编码生成系统之主程序模块设计详解

本文实例讲述了Python企业编码生成系统之主程序模块。分享给大家供大家参考,具体如下: 一 点睛 主程序模块包括三部分: 1 主程序初始化 2 主程序界面 3 主程序逻辑 下面分别介绍...

python字典的常用方法总结

python字典的常用方法总结

python中字典是非常常用的数据类型,了解各种方法的作用及优缺点对于字典的使用非常有用。 dict.clear() 的方法用于清空所有的键值对,清空后字典变成空字典。代码示例如下:...