在安装和使用pyspider中遇到个问题,网上没找到答案自己解决了,记录一下,希望能给后来采坑者一些帮助。
pip3 install pyspider # 我同时使用python2和python3,因为我想使用适用于python3的pyspider,因此我用的pip3来安装的
在命令行中输入:pyspider
详细报错信息是下面这样的:
C:\Users\username>pyspider
c:\users\username\appdata\local\programs\python\python36\lib\site-packages\pyspide
r\libs\utils.py:196: FutureWarning: timeout is not supported on your platform.
warnings.warn("timeout is not supported on your platform.", FutureWarning)
phantomjs fetcher running on port 25555
[I 190330 14:42:22 result_worker:49] result_worker starting...
[I 190330 14:42:22 processor:211] processor starting...
[I 190330 14:42:22 scheduler:647] scheduler starting...
[I 190330 14:42:22 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0
[I 190330 14:42:24 scheduler:782] scheduler.xmlrpc listening on 127.0.0.1:23333
[I 190330 14:42:24 tornado_fetcher:638] fetcher starting...
[I 190330 14:42:25 run:420] phantomjs exited.
[I 190330 14:42:25 app:84] webui exiting...
[I 190330 14:42:25 tornado_fetcher:671] fetcher exiting...
[I 190330 14:42:25 scheduler:663] scheduler exiting...
[I 190330 14:42:25 processor:229] processor exiting...
[I 190330 14:42:26 result_worker:66] result_worker exiting...
Traceback (most recent call last):
File "c:\users\username\appdata\local\programs\python\python36\lib\runpy.py", li
ne 193, in _run_module_as_main
"__main__", mod_spec)
File "c:\users\username\appdata\local\programs\python\python36\lib\runpy.py", li
ne 85, in _run_code
exec(code, run_globals)
File "C:\Users\username\AppData\Local\Programs\Python\Python36\Scripts\pyspider.
exe\__main__.py", line 9, in
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\pyspider\run.py", line 754, in main
cli()
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 722, in __call__
return self.main(*args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 697, in main
rv = self.invoke(ctx)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 1043, in invoke
return Command.invoke(self, ctx)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 535, in invoke
return callback(*args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\pyspider\run.py", line 165, in cli
ctx.invoke(all)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 535, in invoke
return callback(*args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\pyspider\run.py", line 497, in all
ctx.invoke(webui, **webui_config)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\core.py", line 535, in invoke
return callback(*args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\click\decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\pyspider\run.py", line 384, in webui
app.run(host=host, port=port)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\pyspider\webui\app.py", line 59, in run
from .webdav import dav_app
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\pyspider\webui\webdav.py", line 216, in
dav_app = WsgiDAVApp(config)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\wsgidav\wsgidav_app.py", line 135, in __init__
_check_config(config)
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\wsgidav\wsgidav_app.py", line 119, in _check_config
raise ValueError("Invalid configuration:\n - " + "\n - ".join(errors))
ValueError: Invalid configuration:
- Deprecated option 'domaincontroller': use 'http_authenticator.domain_control
ler' instead.
打开报错最后的文件,我的报错提示的路径是:
c:\users\username\appdata\local\programs\python\python36\lib\site-packages
\wsgidav\wsgidav_app.py
在wsgidav_app.py这文件搜索:domaincontroller。我找到的是在96行这里
将domaincontroller改为http_authenticator.domaincontroller即可,改完如下所示:
重新在命令行窗口输入:pyspider
如果显示如下结果:
在浏览器输入http://localhost:5000/(这里的5000是和下方图片中红框的数字要一致),如果看到以下界面,说明启动成功了!
注:原创文章,如需转载,请注明出处