• 技术文章 >常见问题 >Python常见问题

    python安装scrapy出错怎么解决

    silencementsilencement2019-12-05 11:31:28原创3426

    安装 Scrapy 与安装其他 Python 包没有区别,同样使用如下命令来安装:

    pip install scrapy

    如果在命令行窗口中运行该命令,将会看到程序并不立即下载、安装 Scrapy,而是不断地下载大量第三方包。

    如果在命令行窗口中提示找不到 pip 命令,则也可以通过 python 命令运行 pip 模块来安装 Scrapy,
    例如 python -m pip install scrapy。
    这是因为 Scrapy 需要依赖、大量第三方包。典型的,Scrapy 需要依赖如下第三方包:
    pyOpenSSL:Python 用于支持 SSL(Security Socket Layer)的包。
    cryptography:Python 用于加密的库。
    CFFI:Python 用于调用 C 的接口库。
    zope.interface:为 Python 缺少接口而提供扩展的库。
    lxml:一个处理 XML、HTML 文档的库,比 Python 内置的 xml 模块更好用。
    cssselect:Python 用于处理 CSS 选择器的扩展包。
    Twisted:为 Python 提供的基于事件驱动的网络引擎包。
    ......

    推荐学习《python教程》

    如果在 Python 环境下没有这些第三方包,那么 Python 会根据依赖自动下载并安装它们。这个过程原本没啥好讲的,pip 通常会自动完成整个过程,我们只需要等待即可。但 pip 在自动下载、安装 Twisted 时会提示以下错误:

    error:Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual 
    C++ Build Tools":http://landinghub.visualstudio.com/visual-cpp-build-tools

    按照上面的错误提示,我们需要先下载和安装 Microsoft Visual C++ Build Tools 工具,然后才能安装 Twisted。为了安装一个小小的 Twisted 包,难道就需要安装一个庞大的 Microsoft Visual C++ Build Tools?

    答案是否定的,提示上面的错误只是因为 pip 自动下载的 Twisted 安装包有一些缺陷,因此可以先自行下载 Twisted 安装包。登录 www.lfd.uci.edu/~gohlke/pythonlibs/ 站点,在该页面中间查找“Twisted”项目,可以看到如图 1 所示的下载链接。

    2-1Z3111JPI50.gif

    从图 1 所示的链接可以看到,当前 Twisted 的最新版是 18.9.0,Twisted 为 2.7、3.5、3.6、3.7 等不同版本的 Python 提供了对应的安装包。由于本教程内容主要以 Python 3.6 为主,因此应该下载 Twisted 的 Python 3.6 版本,其中文件名带 win32 的是 32 位版本,而带 win_amd64 的则是 64 位版本,此处还需要根据操作系统的位数选择对应的版本。

    在下载了合适的 Twisted 安装包后,会得到一个 Twisted-18.9.0-cp36-cp36m-win_amd64.whl 文件(针对 64 位系统的),该文件就是 Twisted 安装包。

    运行如下命令来安装 Twisted 包。

    pip install Twisted-18.9.0-cp36-cp36m-win_amd64.whl

    在安装过程中会自动检查,如有必要,会自动下载并安装 Twisted 所依赖的第三方包,如 zope.interface、Automat、incremental 等。

    在安装完成后,会提示如下安装成功的信息:

    Successfully installed Twisted-18.9.0
    专题推荐:scrapy
    上一篇:python代码用什么写 下一篇:python中使用import导入re库失败怎么办

    相关文章推荐

    • scrapy不支持python3吗

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网