你能告诉我如何得到Python3和运行在我的概要模块(DS214play,与DSM 6.0.1-7393更新1)? 我想要的是:在Python3中运行Tweepy和其他模块来了解我的滑膜。
我被困的地方:
如何让PIP3安装Tweepy,如果我尝试得到:Requirement already up-to-date: pip in /usr/lib/python2.7/site-packages
显然我已经安装了Python2.7,但我不知道。。。
root@DiskStation:/volume1/@appstore/python3/include# ls
get-pip.py python3.4m
root@DiskStation:/volume1/@appstore/python3/include# python3 get-pip.py
-ash: python3: command not found
root@DiskStation:/volume1/@appstore/python3/include# python get-pip.py
Requirement already up-to-date: pip in /usr/lib/python2.7/site-packages
所以为了让PIP3工作,我需要了解Python2.7安装在哪里,甚至是如何删除它(如果有必要的话)。
最好知道使用哪一个Python3包(Synology DSM包管理器或SynoCommunity Python3包的默认设置)
因为当与SSH(使用PuTTY)连接到我的概要时,我可以在DSM包管理器和相关文件夹中看到Python3。
但是我没有看到Python2.7的任何包(我相信它一定在那里),而且我在连接SSH时找不到任何Python2.7文件夹,甚至很难找到,我有一个提示,在某个地方一定有一个“/usr/lib/Python2.7/site-packages”文件夹。。。
->;Synology DSM包管理器中的默认Python3位于py3k文件夹中:
admin@DiskStation: /volume1/@appstore/py3k/usr/local/bin$
python3
->;SynoCommunity Python3软件包安装在不同的位置:
admin@DiskStation: /volume1/@appstore/python3$ ls
bin etc include install.log lib openssl.cnf share
admin@DiskStation: /volume1/@appstore/python3/bin$ ls
2to3 busybox bzfgrep bzmore delgroup fatattr infocmp lzmainfo pip3 python3.4 reset start-stop-daemon tset virtualenv-3.4 xz
2to3-3.4 bzcat bzgrep captoinfo deluser gpg-error infotocap mpicalc pip3.4 python3.4m shuf tabs unlink wheel xzcat
addgroup bzcmp bzip2 clear dumpsexp hmac256 lzcat nice pydoc3 pyvenv speexdec tic unlzma xmlcatalog xzdec
adduser bzdiff bzip2recover c_rehash easy_install idle3 lzma openssl pydoc3.4 pyvenv-3.4 speexenc toe unxz xmllint
bunzip2 bzegrep bzless curl easy_install-3.4 idle3.4 lzmadec pip python3 renice sqlite3 tput virtualenv xsltproc
admin@DiskStation:/volume1/@appstore/python3/bin$ python3
-sh: python3: command not found
我所做的:
我使用Synology DSM包管理器安装了Python3,然后使用SSH(使用PuTTY)连接到Synology并设置路径,并使用PIP安装Tweepy和其他模块。
我相信这是与一些命令,如:(不幸的是,大多数复制粘贴不知道确切的细节是什么意思…)
root@DiskStation:~# curl -k https://bootstrap.pypa.io/get-pip.py | python
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1488k 100 1488k 0 0 1577k 0 --:--:-- --:--:-- --:--:-- 1577k
Collecting pip
Using cached pip-8.1.2-py2.py3-none-any.whl
Collecting setuptools
Downloading setuptools-23.1.0-py2.py3-none-any.whl (435kB)
100% |████████████████████████████████| 440kB 551kB/s
Collecting wheel
Using cached wheel-0.29.0-py2.py3-none-any.whl
Installing collected packages: pip, setuptools, wheel
Successfully installed pip-8.1.2 setuptools-23.1.0 wheel-0.29.0
我能够运行基于此的脚本,非常高兴。直到我得到一些(Unicode)错误,并且从错误日志中看到它是在我的概要上运行的Python的2.7版本。这些Unicode问题似乎在Python3中得到了解决(我在我的PC上也有),所以我也希望Python3也能在Synology上得到解决。
如果我使用SSH连接并键入Python,那么2.7版本确实已经安装:
admin@DiskStation:~$ python
Python 2.7.11 (default, May 13 2016, 05:16:12)
[GCC 4.9.3 20150311 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
这很奇怪,因为我在包管理器的Synology中没有看到任何Python 2.7包,所以我必须通过一些SSH命令安装了2.7,这是我为PIP准备的。
我在Synology安装了默认的Python3包,如果我键入admin@DiskStation:~$ python3
我已经把Python3准备好了。
在/volume1/@appstore/py3k/I中,我看到了各种Python和PIP版本,python3工作得很好。但是没有任何模块,PIP3也无法工作(“找不到命令”),我从所有可能的目录中尝试了它,并使用了类似Q&;上建议的所有格式,例如pip3.4 install tweepy, pip3 install tweepy, etc.
因此,现在使用DSM包管理器,我已经卸载了Python3并安装了SynoCommunity Python3(如Synology forum here中所建议的),它显示了不同的目录结构。但看起来更糟,因为现在我再也看不到对Python2.7的引用(但它仍然运行,所以必须存在),甚至无法启动python3:
admin@DiskStation:~$ cd /volume1
admin@DiskStation:/volume1$ cd @appstore
admin@DiskStation:/volume1/@appstore$ cd python3
admin@DiskStation:/volume1/@appstore/python3$ ls
bin etc include install.log lib openssl.cnf share
admin@DiskStation:/volume1/@appstore/python3$ cd bin
admin@DiskStation:/volume1/@appstore/python3/bin$ ls
2to3 bzcmp bzless deluser idle3 lzmainfo pydoc3 renice tabs unxz xz
2to3-3.4 bzdiff bzmore dumpsexp idle3.4 mpicalc pydoc3.4 reset tic virtualenv xzcat
addgroup bzegrep captoinfo easy_install infocmp nice python3 shuf toe virtualenv-3.4 xzdec
adduser bzfgrep clear easy_install-3.4 infotocap openssl python3.4 speexdec tput wheel
bunzip2 bzgrep c_rehash fatattr lzcat pip python3.4m speexenc tset xmlcatalog
busybox bzip2 curl gpg-error lzma pip3 pyvenv sqlite3 unlink xmllint
bzcat bzip2recover delgroup hmac256 lzmadec pip3.4 pyvenv-3.4 start-stop-daemon unlzma xsltproc
admin@DiskStation:/volume1/@appstore/python3/bin$ python3
-sh: python3: command not found
admin@DiskStation:/volume1/@appstore/python3/bin$ python
Python 2.7.11 (default, May 13 2016, 05:16:12)
[GCC 4.9.3 20150311 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
所以我到了要求一些提示,提示和建议的地步。
如果成功了。下一个。现在您可以为python3安装模块,
它的路径取决于您的系统,命令例如:
/volume1/@appstore/py3k/usr/local/bin/pip3 install numpy应该可以工作!
sudo vi.profile(或.bashrc,用于特定用户登录)
别名pip3='/volume1/@appstore/py3k/usr/local/bin/pip3'
好的,很多回复,我用以下方法解决了它:
已确认在Synology DSM 5.2中默认安装了Python2.7.9(在包中心不可见)。
我可以通过使用以下命令专门调用Python3的pip模块安装来向Python3添加模块:(thx to this Q&A)
/volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages/pip安装路径
(在这种情况下安装tweepy模块)
以及仅供参考的完整命令概述:
(我再次卸载了SynoCommunity Python3包,现在使用DSM package center Python3版本)
我不确定您是否可以完全删除Python2,但是您可以安装Python3并特别调用它,而不是Python2。
首先,确保安装了Python 3: 通过web管理登录到Synology,并在“包中心”中确保安装了“Python3”。(您可以在“软件包中心”的“开发人员工具”下找到它)
接下来,通过简单地调用
python3
,具体地调用Python 3您还可以尝试使用概要中的locate命令来找到Python 2的确切位置。要执行此操作,请在您的概要中输入以下内容:
下面是关于如何使用命令的教程:http://www.thegeekstuff.com/2012/03/locate-command-examples/
祝你好运!
还有, 如果你在堆栈溢出问题上运气不好,我也会跑到概要论坛寻求帮助:https://forum.synology.com
相关问题 更多 >
编程相关推荐