运行pyspider时出现 : ImportError: cannot import name ‘ContextVar‘
生活随笔
收集整理的這篇文章主要介紹了
运行pyspider时出现 : ImportError: cannot import name ‘ContextVar‘
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
運行pyspider常見的錯誤:
①ValueError: Invalid configuration: - Deprecated option ‘domaincontroller’: use ‘http_authenticator.domain_controller’ instead.
②ImportError: cannot import name ‘DispatcherMiddleware’
這里我就不寫了,網上一搜還挺多的,就這個問題我在網上找了好長時間也沒有找到解決方案。為了大家在遇到相同問題時能夠少花點時間,我這里就把我的解決思路分享給大家參考。
這是我運行pyspider命令時出現的錯誤(我在解決上面提的兩個錯誤后出現這個錯誤):
PS D:\python test\pyspider_text> pyspider d:\software\python\python36\lib\site-packages\pyspider\libs\utils.py:196: FutureWarning: timeout is not supported on your platform.warnings.warn("timeout is not supported on your platform.", FutureWarning) [W 210717 17:50:00 run:413] phantomjs not found, continue running without it. [I 210717 17:50:02 result_worker:49] result_worker starting... [I 210717 17:50:02 processor:211] processor starting... [I 210717 17:50:02 scheduler:647] scheduler starting... [I 210717 17:50:02 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0 [I 210717 17:50:03 scheduler:782] scheduler.xmlrpc listening on 127.0.0.1:23333 [I 210717 17:50:04 tornado_fetcher:638] fetcher starting... [I 210717 17:50:04 tornado_fetcher:671] fetcher exiting... [I 210717 17:50:04 scheduler:663] scheduler exiting... [I 210717 17:50:04 result_worker:66] result_worker exiting... [I 210717 17:50:04 processor:229] processor exiting... Traceback (most recent call last):File "d:\software\python\python36\lib\runpy.py", line 193, in _run_module_as_main"__main__", mod_spec)File "d:\software\python\python36\lib\runpy.py", line 85, in _run_codeexec(code, run_globals)File "D:\SoftWare\Python\Python36\Scripts\pyspider.exe\__main__.py", line 7, in <module>File "d:\software\python\python36\lib\site-packages\pyspider\run.py", line 754, in maincli()File "d:\software\python\python36\lib\site-packages\click\core.py", line 829, in __call__return self.main(*args, **kwargs)File "d:\software\python\python36\lib\site-packages\click\core.py", line 782, in mainrv = self.invoke(ctx)File "d:\software\python\python36\lib\site-packages\click\core.py", line 1236, in invokereturn Command.invoke(self, ctx)File "d:\software\python\python36\lib\site-packages\click\core.py", line 1066, in invokereturn ctx.invoke(self.callback, **ctx.params)File "d:\software\python\python36\lib\site-packages\click\core.py", line 610, in invokereturn callback(*args, **kwargs)File "d:\software\python\python36\lib\site-packages\click\decorators.py", line 21, in new_funcreturn f(get_current_context(), *args, **kwargs)File "d:\software\python\python36\lib\site-packages\pyspider\run.py", line 165, in clictx.invoke(all)File "d:\software\python\python36\lib\site-packages\click\core.py", line 610, in invokereturn callback(*args, **kwargs)File "d:\software\python\python36\lib\site-packages\click\decorators.py", line 21, in new_funcreturn f(get_current_context(), *args, **kwargs)File "d:\software\python\python36\lib\site-packages\pyspider\run.py", line 497, in allctx.invoke(webui, **webui_config)File "d:\software\python\python36\lib\site-packages\click\core.py", line 610, in invokereturn callback(*args, **kwargs)File "d:\software\python\python36\lib\site-packages\click\decorators.py", line 21, in new_funcreturn f(get_current_context(), *args, **kwargs)File "d:\software\python\python36\lib\site-packages\pyspider\run.py", line 333, in webuiapp = load_cls(None, None, webui_instance)File "d:\software\python\python36\lib\site-packages\pyspider\run.py", line 48, in load_clsreturn utils.load_object(value)File "d:\software\python\python36\lib\site-packages\pyspider\libs\utils.py", line 369, in load_objectmodule = __import__(module_name, globals(), locals(), [object_name])File "d:\software\python\python36\lib\site-packages\pyspider\webui\__init__.py", line 8, in <module>from . import app, index, debug, task, result, loginFile "d:\software\python\python36\lib\site-packages\pyspider\webui\app.py", line 16, in <module>from flask import FlaskFile "d:\software\python\python36\lib\site-packages\flask\__init__.py", line 7, in <module>from .app import Flask as FlaskFile "d:\software\python\python36\lib\site-packages\flask\app.py", line 19, in <module>from werkzeug.local import ContextVar ImportError: cannot import name 'ContextVar'遇到這個情況你可以看下你在成功執行pip install werkzeug==0.16.0語句時,有沒有出現下面情況
這個是你flask版本的問題,你只要降低下flask版本就行了
pip uninstall flask #卸載 你也可以省略這步,直接pip install flask==1.0 pip install flask==1.0 #我這里改成1.0就行了,改成其他低版本應該也沒問題,有興趣自己試下修改flask版本后:
總結
以上是生活随笔為你收集整理的运行pyspider时出现 : ImportError: cannot import name ‘ContextVar‘的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 爬虫学习笔记(十)—— Scrapy框架
- 下一篇: 爬虫学习笔记(十一)—— Scrapy框