欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

async=True, get_object=False, no_input=False):

程序员文章站 2022-07-14 17:58:21
...

Ⅰ 如果你是通过搜索async=True, get_object=False, no_input=False):看到了这篇文章,说明你刚开始使用pyspider,我没有python基础,但是能够成功运行pyspider,其中的坑是非常的多,坑洼基本上都踩了个遍,看了大概五百多篇博客总结一下所有的坑。所以这总结文档还是可以的

Ⅱ 如果你看过很多博客了,恭喜你!直接看问题就行,离成功不远啦

问题一、python版本选择
3.7.6比3.7.7好,其中3.7.7会报一个问题,什么问题我没有记录。python下载地址:https://www.python.org/downloads/windows/

async=True, get_object=False, no_input=False):
安装时候记得点上环境变量就不用配置全局,环境变量所有工具大同小异,这里跳过。
查看版本:python -V
退出python>>>:Ctrl+Z 然后Enter
安装pyspider命令:pip install pyspider 不要纠结pip2和pip3是什么有什么区别问题哦,这问题也遇到过,不用并没有用上pip3。
问题二、 这是重点问题:async 成为关键字问题!!!
通常错误是这样的,async关键字下面一个 ^ 上面一行还指出位置。意思是说 pyspider 在开发的使用 async 作为参数名 ,后来python升级之后把 async指定为关键字!导致原来所有工程以 async 作为形参名就不能使用了。所以需要一个一个将 async 改成async_mode 。当然起名字随自己喜欢。注意注意:别使用全替换!:因为类名中也有async字符串,所以我们只需要将变量和形参的async一个一个找出来改掉即可。改错了,重新从python版本重新开始吧。

 File "e:\python37-32\lib\site-packages\pyspider\run.py", line 231
   async=True, get_object=False, no_input=False):

没错就是这三个文件了

\Python\Lib\site-packages\pyspider\run.py
\Python\Lib\site-packages\pyspider\fetcher\tornado_fetcher.py
\Lib\site-packages\pyspider\webui\app.py


问题三、wsgidav版本问题
Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead
async=True, get_object=False, no_input=False):

#卸载
pip uninstall wsgidav
#安装指定版本
python -m pip install wsgidav==2.4.1

问题四、 werkzeug版本问题

ImportError: cannot import name 'DispatcherMiddleware' from 'werkzeug.wsgi' (e:\python37-32\lib\site-packages\werkzeug\wsgi.py)
#卸载
python -m pip uninstall werkzeug
#安装指定版本
python -m pip install werkzeug==0.16.0

成功示例
async=True, get_object=False, no_input=False):
这结果不够五百,其中也有python和只有报错信息的居多、先放书签吧,没准你也走了一遍五百篇文章
async=True, get_object=False, no_input=False):