擅长:python、mysql、java
<p>为了在远程计算机上执行某些操作,必须在那里运行某种服务。在</p>
<p>如果是linux机器,您可以通过ssh连接并运行命令。在python中,可以使用<a href="https://github.com/paramiko/paramiko" rel="nofollow">paramiko</a>:</p>
<pre><code>import paramiko
ssh = paramiko.SSHClient()
ssh.connect('127.0.0.1', username='foo', password='bar')
stdin, stdout, stderr = ssh.exec_command("echo hello")
</code></pre>
<p>否则,您可以使用python服务,但必须事先运行它。
您可以使用前面提到的芹菜,或<a href="https://github.com/zeromq/pyzmq" rel="nofollow">ZeroMQ</a>,或者更简单地使用<a href="http://rpyc.readthedocs.org/en/latest/" rel="nofollow">RPyC</a>:</p>
<p>只需在目标计算机上运行<code>rpyc_classic.py</code>脚本,然后就可以在其上运行python:</p>
^{pr2}$
<p>或者,您可以创建一个自定义RPyC服务(请参阅文档)。在</p>
<p>最后一个选择是像前面建议的那样使用HTTP服务器。如果你不想开始安装所有的东西,这可能是最简单的。您可以使用<a href="http://bottlepy.org/docs/dev/index.html" rel="nofollow">Bottle</a>,这是python中的一个简单HTTP框架:</p>
<p>服务器端:</p>
<pre><code>from bottle import route, run
@route('/run_maya')
def index(name):
# Do whatever
return 'kay'
run(host='localhost', port=8080)
</code></pre>
<p>客户端:</p>
<pre><code>import requests
requests.get('http://remote_server/run_maya')
</code></pre>