"remotepyexecutor" is a python module to execute python source code on remote host with TCP connection.
CAUTION There is no security mechanism to verify the incoming connection yet. Use at your own risk.
clone this source.
cd $REMOTEPYEXECUTOR_SOURCE_ROOT
python setup.py install
from remotepyexecutor import server
import asyncio
rpeServ=server.Server()
await rpeServ.startServe('localhost',8112))
# do something...
#close server
await rpeServ.stopServe()
from remotepyexecutor import server
import asyncio
serv=remotepyexecutor.server.Server()
asyncio.run(serv.startServeAndWait('0.0.0.0','8105'))
from remotepyexecutor import client
async def rpe():
cli=await client.connect('localhost',8112)
# return 'None' if no Exception, or repr(exception)
print(await cli.exec('a=22'))
# return eval result if no Exception, or repr(exception)
print(await cli.eval('a'))
await cli.close()
asyncio.run(rpe())
There are some special variable defined in execution environment: "_G" to store global variable cross session. "_session" to access Session on server
View source for more detail.