【问题标题】:Multiple issues trying to install PyBOSSA尝试安装 PyBOSSA 的多个问题
【发布时间】:2020-03-30 03:24:41
【问题描述】:

我正在尝试在运行 Ubuntu 18.04 LTS 的 AWS EC2 实例上设置 PyBOSSA。我在关注the official instructions,到目前为止遇到了三个错误。

  1. sudo apt-get install -y git postgresql postgresql-all postgresql-server-dev-all libpq-dev python-psycopg2 libsasl2-dev libldap2-dev libssl-dev python-virtualenv python-dev build-essential libjpeg-dev libssl -dev libffi-dev dbus libdbus-1-dev libdbus-glib-1-dev libldap2-dev libsasl2-dev python-pip python3-pip redis-server
  2. cd ~
  3. git clone --recursive https://github.com/Scifabric/pybossa
  4. cd pybossa
  5. virtualenv -p python3 env(我明确使用 Python3,因为我的系统也安装了 Python 2.7)。
  6. 源环境/bin/激活
  7. pip install -U pip
  8. pip install -r ~/pybossa/requirements.txt

此时,我开始收到错误消息...我已将标准输出和标准错误复制到一个文件中,我有 uploaded here

我不确定这些错误是否是导致我后来的错误的原因,但我还是继续按照说明进行操作,希望它能起作用...

  1. cp settings_local.py.tmpl settings_local.py
  2. cp alembic.ini.template alembic.ini
  3. redis-server contrib/sentinel.conf --sentinel

我注意到 Redis 服务器版本是 4.0.9(说明说它需要 v2.6 或更高版本)。

启动Redis服务器的输出如下:

30284:X 30 Mar 03:09:22.004 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
30284:X 30 Mar 03:09:22.004 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=30284, just started
30284:X 30 Mar 03:09:22.004 # Configuration loaded

...我认为没关系...

  1. rqscheduler --host 127.0.0.1

我的系统上没有安装此命令。我尝试使用 apt 安装它,但那里什么也没有。我也试过 apt install rq rqscheduler rq-scheduler - 什么也没找到。然后我google了一下,找到了rq-scheduler的网站,发现我可以通过运行pip install rq-scheduler来安装它

安装正确。尽管如此,在终端中运行命令rqscheduler --host 127.0.0.1 仍然失败:rqscheduler: command not found

知道它是一个 Python 包,我想知道是否需要在命令开头添加 python3:python3 rqscheduler --host 127.0.0.1。回复:python3: can't open file 'rqscheduler': [Errno 2] No such file or directory

我也试过pip3 install rq-scheduler(安装正常)然后运行命令,但遇到了同样的错误。

如果知道如何运行它,我将不胜感激,但出于本次测试的目的,我跳过了设置 Regis 和调度程序,并继续使用 PyBOSSA 说明:

  1. sudo su postgres
  2. createuser -d -P pybossa
  3. (密码设置)
  4. createdb pybossa -O pybossa
  5. 退出
  6. python3 cli.py db_create

...然后我得到了这个错误:

  File "cli.py", line 162
    '''SELECT id, created FROM task_run WHERE created LIKE ('\x%')''')
    ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 54-55: truncated \xXX escape

我尝试了python cli.py db_create,以防万一它起作用,但得到了不同的错误:

python cli.py db_create
ValueError: invalid \x escape

所以我看到了三个不同的问题:

  1. 安装 PyBOSSA 所需的 Python 包。
  2. rqscheduler 命令的问题。
  3. 启动 PyBossA 服务器时出错。

这些错误是什么意思?

【问题讨论】:

    标签: redis crowdsourcing pybossa


    【解决方案1】:

    1 ) 对于安装,试试这个:

    virtualenv env 
    source env/bin/activate
    sudo apt install python3-pip
    pip3 install -r requirements.txt
    

    最后没有错误。


    2) 尝试:

    pip install rq-scheduler==0.9.1
    

    pip3 install rq-scheduler==0.9.1
    

    3)\ 字符需要在 python 中转义(如\\)。

    因此,您可以将 cli.py 第 162 行(使用文本编辑器)更改为:

     '''SELECT id, created FROM task_run WHERE created LIKE ('\x%')''')
    

    收件人:

     '''SELECT id, created FROM task_run WHERE created LIKE ('\\x%')''')
    

    不过最好还是由 github 上的 dev 来修复...


    结论

    根据official documentation

    PYBOSSA for python 3 我们终于将 PYBOSSA 迁移到了 python 3。我们是 在我们在生产中对其进行一些测试之前,不会合并到 master 中 更多,所以请通过测试帮助我们。你所要做的就是 基本上,检查 python3 分支 (migrate-python3) 并运行它。 然后,您发现任何错误,问题,您只需报告它,我们会很高兴 来帮助你。

    PYBOSSA python3 版本是新迁移的,所以最终不是很稳定...我希望使用the PYBOSSA python2.7 branch 并完全按照文档进行操作会更好。

    根据official github account,他们试图通过支持赚钱(?...)

    获得专业支持您可以聘请我们为您的 PYBOSSA 提供帮助 项目或服务器(特别适用于 python 2.7)。访问我们的网站,然后 联系我们。

    【讨论】:

    • 谢谢,这解决了我在 OP 中遇到的所有错误。我现在遇到了另一个问题(服务器似乎已启动,但我实际上无法在我的网络浏览器中打开它)。我将尝试改用 Python2.7 版本。如果这不能解决问题,我将在 S/O 上打开一个单独的问题。非常感谢您的帮助。
    【解决方案2】:

    该问题现已针对 master 分支 (https://github.com/Scifabric/pybossa/pull/1986) 修复。您可以获取新代码并使用它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-05
      • 2021-03-01
      • 2021-04-10
      • 2016-08-19
      • 2020-02-01
      • 2020-06-28
      • 2014-08-11
      相关资源
      最近更新 更多