windows 安装Scrapy常见错误总结

2021-04-27 03:26

阅读:430

标签:window scrapy

  写这篇文章,不仅是为了汇总安装Scrapy的常见安装问题,还自己独立解决问题的能力。从一开始报VS C++版本的错误,到后来在CentOS运行pip install lxml很慢(CentOS 7 是一台虚拟机)。

这是一种常见的安装lxml的异常情况:


电脑环境:win10 64位

python环境:python 2.7版本 64位系统

目标:安装lxml  ( lxml-3.6.4-cp27-cp27m-win32.whl)


主要步骤就两步:

1:安装工具wheel : pip install wheel

2:安装lxml:pip install lxml-3.6.4-cp27-cp27m-win32.whl


“预期“”会遇到的坑:

1,记得先安装wheel工具

2,filename.whl is not supported wheel on this platform

     可以尝试升级pip工具:python -m pip install --upgrade pip

3,升级工具后应该就没问题了,需要注意的是lxml的版本:cp27 代表python版本2.7;  win32代表python支持的版本号。   lxml版本可到网站自行下载 :http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml


第二种常见安装异常情况:

注意的是window platform里pip.exe 的路径在C:\Python27\scripts\pip.exe


error Microsoft VIsual C++ 9.0 required,按照这个blog(http://www.zhimengzhe.com/windows/112812.html),根据该博文,

一个是在环境变量上修改

技术分享图片

2.修改源代码

打开 “python安装目录/Lib/distutilsmsvc9compiler.py”文件,找到find_vcvarsall函数,在该函数开头添加 

version =上面的版本号, 即添加内容为 “VERSION = 14.0”, 这样就可以使用了

def find_vcvarsall(version):    """Find the vcvarsall.bat file

    At first it tries to find the productdir of VS 2008 in the registry. If
    that fails it falls back to the VS90COMNTOOLS env var.
    """
    version = 14.0            ##添加这行
    vsbase = VS_BASE % version
    ... ...

3.安装vcforpython27.msi,下载地址:https://www.microsoft.com/en-us/download/confirmation.aspx?id=44266


第三种报错信息

Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed

fatal error C1083:cannot open include file:libxml/xml.version.h

请参考Stack Overflow

https://stackoverflow.com/questions/33785755/getting-could-not-find-function-xmlcheckversion-in-library-libxml2-is-libxml2


run:

pip install C:\path\to\downloaded\file\lxml-3.6.1-cp27-cp27m-win32.whl


第四种报错信息

error: command ‘C:\\Users\\rainer\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe‘ failed with exit status2



,最后在stackoverflow找到解决办法改用这个命令安装lxml就好了:set STATICBUILD=true && pip install lxml

原帖地址:http://stackoverflow.com/questions/20460890/lxml-install-on-windows-7-using-pip-and-python-2-7



If you have a compiler installed (tested with VS C++ 2008 Express), you can simply run:

set STATICBUILD=true && pip install lxml

As pointed out on documentation, setting STATICBUILD will tell to lxml‘s installer to automatically download all its binary dependencies before build.

These lxml binary dependencies, that should be present when installing from source, will be downloaded and build together by the installer:

  • libxslt

  • iconv

  • zlib

  • libxml2

Bonus: It also works inside a virtualenv.


像CentOS里一样(yum install libxml2-devlibxslt-dev),windows操作系统是否要装libxml2-dev,libxslt-dev .




pip安装工具不行就可以换一种安装工具。

easy_install lxml 


参照这篇博文http://www.cnblogs.com/python-life/articles/4511314.html 安装在windows系统安装Scrapy。


安装Scrapy后,梳理一下:系统给你的报错信息很重要,报错信息+安装的关键词(像Scrapy)是输入到搜索引擎的重要内容,还有再复杂的事情,分成小步骤来一个一个地完成。

本文出自 “Jason的博客” 博客,请务必保留此出处http://jason83.blog.51cto.com/12723827/1983664

windows 安装Scrapy常见错误总结

标签:window scrapy

原文地址:http://jason83.blog.51cto.com/12723827/1983664


评论


亲,登录后才可以留言!