我用Numpy/Scipy/Matplotlib编写科学软件。在我的家用电脑上开发了应用程序后,我现在对编写简单的web应用程序感兴趣。示例:用户上传图像或音频文件,我的程序使用Numpy/Scipy处理它,并使用Matplotlib在浏览器上显示输出,或者用户可以下载处理过的文件。
我已经为安装了Python2.4.3的主机支付了费用,但没有Numpy/Scipy。我也不能通过命令行访问shell。只是拖放FTP。非常有限,但我可以让简单的Python/CGI脚本工作。
令人惊讶的是,一个网络搜索揭示了很少有合适的选择与这些功能已经内置的网站托管。(如果我错了,请指导我。)我正在学习Google,但我仍然没有完全理解它的工具和局限性。网络告诉我的是,其他人也有类似的担忧。
希望能找到解决办法,我想我应该向这个令人敬畏的SO社区提出这些简单的问题:
谢谢你的帮助。
编辑:在下面这些有用的答案之后,我在Slicehost买了20美元的计划,我很喜欢它!(我第一次尝试亚马逊EC2。我一定很蠢,但我就是不能让它开始工作。)用Apache设置Ubuntu服务器只需几个小时(我是Apache新手)。它允许我用Python和更多的东西来做我想做的事情。我现在也有了自己的版本控制远程存储库。再次感谢!
编辑2:将近两年后,我尝试了Linode和EC2 (再次)。林诺德很棒。这次EC2看起来更容易了--也许只是增加了体验,或者是亚马逊对AWS管理控制台所做的改进。对于那些对Numpy/Scipy/Matplotlib/Audiolab感兴趣的人来说,每当我启动一个EC2实例时,这里是我的Ubuntu备忘单:
ec2:~$ sudo aptitude install build-essential python-scipy ipython
python-matplotlib python-dev python-setuptools libsndfile-dev
libasound2-dev mysql-server python-mysqldb
Upload scikits.audiolab-0.11.0
ec2:~/scikits.audiolab-0.11.0$ sudo python setup.py install
ec2:~$ sudo rm -rf scikits.audiolab-0.11.0
ec2:~$ nano .ipython/ipy_user_conf.py
ip.ex('import matplotlib; matplotlib.use("Agg"); import scipy, pylab,
scipy.signal as sig, scipy.linalg as lin, scipy.sparse as spar,
os, sys, MySQLdb, boto; from scikits import audiolab')
import ipy_greedycompleter
import ipy_autoreload发布于 2010-01-17 07:10:09
1:将第三方包安装到托管空间
您确实可以将第三方包安装到您的托管空间。如果它是一个纯python包,只需将其解压缩到一个目录中,然后将该目录添加到您的PYTHONPATH环境变量或sys.path中。
经常这样做是很累的,而且对于编译的模块来说也不容易。如果您可以访问python主机,那么优秀的维塔列夫包允许您使用自己的库设置私有python环境。
要设置您的虚拟环境,您将在shell中执行如下操作:
$ virtualenv $HOME/my_python
$ $HOME/my_python/bin/easy_install numpy您可以继续在您的个人python环境中运行任何您想要安装的easy_install。
现在,当您编写python脚本时,如果可能的话,您将希望使用您的私有python解释器:
#!/home/myuser/my_python/bin/python
import numpy
# script here如果无法指定python (比如由mod_wsgi运行),则需要将其添加到导入路径:
import sys
sys.path.insert(0, '/home/myuser/my_python/lib/python2.5/site-packages')
import numpy2:使用numpy托管站点
我想不出有任何托管网站可以提供numpy预安装。但是,梦想之家/Bluehost for sharedhost提供了SSH访问,使用shell access,您可以使用我前面描述的方法安装numpy。任何虚拟专用服务器(如林诺德/Slicehost )都允许您安装任何您想安装的东西。
3: AppEngine
如前所述,AppEngine将不允许您安装C扩展(但纯python扩展确实有效),因此numpy不太可能适用于您,因为我怀疑它的一些特性使用了C扩展。
发布于 2010-01-17 06:04:59
遗憾的是,App引擎不支持任何numpy、App或matplotlib。
如果您知道您的主机使用的是什么操作系统和CPU,您可以自己安装相同的Python,下载并安装他们使用的相同版本的Python,下载所需软件包的来源,并将它们构建到.so (或.pyd,视平台而定)文件中,并上传这些文件--听起来像是一次真正的强制。
在提供正常虚拟主机(虚拟机,通常是Linux )的许多站点中,任何一个提供少量HW资源的站点,特别是您可以使用的根权限、ssh shell访问权限和gcc,都将使更易于使用--本质上,您将像在您自己的Linux工作站上一样下载和安装所需的软件!
发布于 2012-05-18 17:20:31
有哪些托管站点(免费或付费)安装了Numpy/Matplotlib
PythonAnywhere提供网络托管和简单的浏览器内集成开发环境;许多Python包(包括NumPy和Matplotlib)都是预装。有一个免费的计划,你可以用来玩,“高级”和“托管”帐户的更多功能分别是5美元和10美元/月。
完全披露:我在那里工作..。
https://stackoverflow.com/questions/2080110
复制相似问题