(一)安装Scrapy库出现的问题及解决方法

来源:互联网 发布:it helpdesk 工作内容 编辑:程序博客网 时间:2024/06/08 11:57

1)安装pywin32

下载网址为:
https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/
(选择符合电脑上已安装python的位数的版本,可通过打开IDLE来查看)
运行.exe文件,可能会有如下提示:

Python version 3.6-32 required, which was not found in the registry.

原因是安装程序没有找到python注册表,先写用idle运行脚本程序将python写入注册表,代码如下:

#python3使用下列代码import sysfrom winreg import *# tweak as necessaryversion = sys.version[:3]installpath = sys.prefixregpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)installkey = "InstallPath"pythonkey = "PythonPath"pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (    installpath, installpath, installpath)def RegisterPy():    try:        reg = OpenKey(HKEY_CURRENT_USER, regpath)    except EnvironmentError as e:        try:            reg = CreateKey(HKEY_CURRENT_USER, regpath)            SetValue(reg, installkey, REG_SZ, installpath)            SetValue(reg, pythonkey, REG_SZ, pythonpath)            CloseKey(reg)        except:            print ("*** Unable to register!")            return        print (" Python", version, "is now registered!")        return    if (QueryValue(reg, installkey) == installpath and        QueryValue(reg, pythonkey) == pythonpath):        CloseKey(reg)        print ("=== Python", version, "is already registered!")        return    CloseKey(reg)    print ("*** Unable to register!")    print ("*** You probably have another Python installation!")if __name__ == "__main__":    RegisterPy() 
#python2使用下列代码import sysfrom _winreg import *# tweak as necessary version = sys.version[:3] installpath = sys.prefix  regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)installkey = "InstallPath"pythonkey = "PythonPath"pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (installpath, installpath, installpath)def RegisterPy():    print "begin RegisterPy "    try:        print "open key : %s"%regpath        reg = OpenKey(HKEY_CURRENT_USER, regpath)    except EnvironmentError as e:            try:                       reg = CreateKey(HKEY_CURRENT_USER, regpath)             SetValue(reg, installkey, REG_SZ, installpath)             SetValue(reg, pythonkey, REG_SZ, pythonpath)            CloseKey(reg)         except:             print "*** EXCEPT: Unable to register!"             return                     print "--- Python", version, "is now registered!"         return    if (QueryValue(reg, installkey) == installpath and         QueryValue(reg, pythonkey) == pythonpath):             CloseKey(reg)             print "=== Python", version, "is already registered!"             return CloseKey(reg)     print "*** ERROR:Unable to register!"     print "*** REASON:You probably have another Python installation!"def UnRegisterPy():    #print "begin UnRegisterPy "    try:        print "open HKEY_CURRENT_USER key=%s"%(regpath)        reg = OpenKey(HKEY_CURRENT_USER, regpath)        #reg = OpenKey(HKEY_LOCAL_MACHINE, regpath)    except EnvironmentError:          print "*** Python not registered?!"        return    try:       DeleteKey(reg, installkey)       DeleteKey(reg, pythonkey)       DeleteKey(HKEY_LOCAL_MACHINE, regpath)    except:       print "*** Unable to un-register!"    else:       print "--- Python", version, "is no longer registered!"            if __name__ == "__main__":      RegisterPy()

写入注册表后,按下win+r,输入regedit打开注册表编辑器,按此目录找到文件夹:
这里写图片描述
右键点击3.6,重命名为3.6-32
再运行pywin32的安装文件,点击下一步,完成pywin32安装。

2)安装zope.interface

下载网址为:
https://pypi.python.org/pypi/zope.interface/4.4.3#downloads
这里写图片描述
(例:python版本是3.6,下载cp36的wheel包)
将文件放在任意文件夹中,用管理员权限运行win控制台,进入该文件夹目录下,输入
pip install zope.interface-4.4.3-cp36-cp36m-win_amd64.whl
(后面键入对应的wheel包文件名)回车,完成zope.interface安装。

3)安装Twisted

下载网址:
http://www.lfd.uci.edu/~gohlke/pythonlibs/
在win控制台下进入该文件夹目录,输入
pip install Twisted‑17.9.0‑cp36‑cp36m‑win_amd64.whl
完成Twisted安装。

4)安装Scrapy

用管理员权限进入win控制台,输入pip install scrapy,完成Scrapy安装。

原创粉丝点击