0

我尝试使用 Pyspider 启动一个抓取项目,我安装了所需的库:

  • 蜘蛛
  • 幻影
  • 龙卷风
  • Wsgidav(所需版本 2.4)
  • 杰斯敏

好的,安装后出现这个错误

文件“c:\users{:))}\appdata\local\programs\python\python37\lib\site-packages\pyspider\run.py”,>第 231 行

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

SyntaxError:无效的语法

我通过将所有python关键字“ async ”变量名称更改为另一个名称“ _async ”来解决了这个问题。(因为我使用python 3.7并且此版本已将async单词设置为关键字)

我使用以下命令再次启动项目:

python -m pyspider.run

并得到了这些错误:

C:\Users\yosser\AppData\Local\Programs\Python\Python37-32\lib\site-packages\pyspider\libs\utils.py:196:FutureWarning:您的平台不支持超时。

warnings.warn("您的平台不支持超时。", FutureWarning)

[W 200425 12:55:44 run:413] phantomjs 未找到,没有它继续运行。

[I 200425 12:55:46 result_worker:49] result_worker 开始...

[I 200425 12:55:47 processor:211] 处理器启动...

[I 200425 12:55:47 scheduler:647] 调度程序正在启动...

[I 200425 12:55:47 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0

[I 200425 12:55:47 result_worker:66] result_worker 正在退出...

[I 200425 12:55:47 scheduler:782] scheduler.xmlrpc 监听 127.0.0.1:23333

[I 200425 12:55:48 tornado_fetcher:638] fetcher 开始...

[I 200425 12:56:47 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0

Pyspider 服务器已关闭(localhost: 5000 not found) 对于这个问题,我怀疑输出行:

[W 200425 12:55:44 run:413] phantomjs 未找到,没有它继续运行。

我根据这个答案更改了文件“webui/webdav.py”。但没有好消息。请我需要结束这个糟糕的现场故事,谢谢。

4

1 回答 1

0

python 3.x 中的async用作关键字。因此,在 python 3.x 上使用 pyspider 时,需要在所有必要的文件中将async重命名为_async 。 从启动pyspider时导致控制台报错的文件和行开始

要使用 PhantomJS,您应该安装 PhantomJS。如果你在所有模式下运行 pyspider,如果在 PATH 中可执行,则启用 PhantomJS。

通过运行确保 phantomjs 正常工作

$ pyspider phantomjs

PhantomJS 已安装并放置在 PATH 中的某处?

于 2020-04-27T08:00:55.773 回答