2013-03-01 2 views
0

나는 wxpython을 사용하여 파이썬에 초보자입니다. 로컬 컴퓨터에서 특정 작업을 수행하는 GUI 모델을 만들었습니다. 해당 도구가 원격 클라이언트의 여러 로컬 시스템에서 작업을 수행하도록하고 싶습니다. 나는 몇 가지 문서 (파이썬 : 네트워킹)을 통과했지만 이해할 수 없었다 : (.) ​​내 요구 사항은 각 기계의 모든 IP 주소와 포트 번호를 제공해야한다. 그리고 ssh를 사용하지 않으면 우연히 발생한다. 누군가가 나에게 파이썬에서 솔루션을 제안하시기 바랍니다 수 있습니까? 나는 지난 3 개월에서 그것을 시도하고있다.원격 클라이언트 컴퓨터를 사용하여 로컬 컴퓨터에 연결하는 방법

답변

1

내가 몇 년 전 같은 문제가 있고, 내가 파이썬 파이 (http://pythonhosted.org/Pyro4/)와 그것을 해결, 그것은 당신이 객체가 네트워크를 통해 서로 대화 할 수있는 응용 프로그램을 구축 할 수있는 라이브러리입니다 최소한의 프로그래밍 작업만으로 간단하게 수행 할 수 있습니다.

클라이언트/서버 클라이언트/클라이언트 등을 사용할 수 있으며 원격 네트워크 컴퓨터에서 "사물"또는 "무언가"를 실행할 수 있습니다. 예를 들어

, 당신은

전체 예 A message 하나에 PC를 보내거나 File를 보내거나 등 class 원격을 실행해야하는 경우 :

서버를

# saved as greeting.py 
import Pyro4 

class GreetingMaker(object): 
    def get_fortune(self, name): 
     return "Hello, {0}. Here is your fortune message:\n" \ 
       "Tomorrow's lucky number is 12345678.".format(name) 

greeting_maker=GreetingMaker() 

daemon=Pyro4.Daemon()     # make a Pyro daemon 
ns=Pyro4.locateNS()     # find the name server 
uri=daemon.register(greeting_maker) # register the greeting object as a Pyro object 
ns.register("example.greeting", uri) # register the object with a name in the name server 

print "Ready." 
daemon.requestLoop()     # start the event loop of the server to wait for calls 

고객

# saved as client.py 
import Pyro4 

name=raw_input("What is your name? ").strip() 

greeting_maker=Pyro4.Proxy("PYRONAME:example.greeting") # use name server object lookup uri shortcut 
print greeting_maker.get_fortune(name) 

먼저 서버를 실행해야합니다 (예 : IP 로컬 또는 기타). 요청을 기다리는 중입니다. 클라이언트를 실행하면 클라이언트가 작동하는 방식을 볼 수 있습니다 (IP 서버 [ 또는 도메인])

서버에서 모든 것을 수행하고 네트워크 또는 인터넷의 다른 PC에서 호출 할 수 있습니다.

어플라이언스는 매우 유용합니다.

도움이 되었기를 바랍니다. 조 도허티 @

+0

@ ManuParra 고맙다. 나는 제안 된 링크를 점검 할 것이다. – biz

0

이에는 하나 개의 솔루션이 없습니다.

당신은 클라이언트 서버 모델을 사용해야합니다. 당신의 클라이언트가 유사합니다 지금 가지고있는 것과 서버가 제어 할 것입니다. 네트워킹에 대해서는을 참조하십시오.

해당 상자에 액세스하지 않고 원격 명령을 실행하십시오.

감사

+0

:

(http://pythonhosted.org/Pyro4/intro.html#simple-example 문서 링크) : 감사하지만 manuparr 솔루션에 따라 우리는 그것을 가능하게 할 수 있습니다. – biz

관련 문제