2014-04-08 2 views
0

활성 파이썬 스크립트에서 현재 JavaScript를 실행중인 웹 페이지로 데이터 패킷을 보내는 방법이 있습니까?Python을 사용하여 JavaScript와 통신 하시겠습니까?

내가 찾고있는 구체적인 사용법은 자바 스크립트를 사용하여 웹 페이지의 기능을 제공하여 파이썬 스크립트에 웹 페이지의 현재 상태에 대한 정보를 제공 한 다음 파이썬 스크립트가 해당 데이터를 해석하고 전송하도록하는 것입니다 웹 페이지로 돌아가는 데이터는 자바 스크립트가 어떤 함수를 실행할지 결정하는 데 사용됩니다.

이것은 (법적으로) 비디오 게임 봇용이므로 실시간으로 발생해야합니다. 저는 파이썬과 웹 요청에 상당히 능숙합니다. 그러나 저는 자바 스크립트에 익숙해졌습니다. Javascript와 관련해서는 너무 복잡하지 않기를 바랍니다.

EDIT : 자바 스크립트가 파이썬 스크립트에서 읽고 쓸 수있는 파일에 자바 스크립트를 쓰는 것이 좋지만 빠른 Google 검색은 자바 스크립트가 파일의 측면에서 매우 제한적이라고 말합니다. /영형. 이 일을 성취 할 수있는 방법이 있을까요?

+0

관련 (거의 중복) http://stackoverflow.com/questions/22413568/signalr-alternative-for-python –

+0

이 작업을 수행하려면 websocket이 필요합니다. –

답변

0

보안상의 이유로 브라우저의 JavaScript는 일반적으로로드 된 사이트와 만 통신하도록 제한됩니다.

감안할 때 AJAX 호출이라고 할 수 있습니다.

+0

AJAX 통화가 필요하십니까? 당신은 정교 할 수 있습니까? – user2740392

0

XML 요청을 만들 수 있습니다 XMLHttpRequest API를 Jquery $ .ajax 및 $ .get. 는 XMLHttpRequest의 API는 적절한 액세스 제어 - 허용 - 원산지 헤더를 반환 동일한 서버에 요청, 또는 요청을 허용 할 것을

https://developer.mozilla.org/en-US/docs/WebSockets

참고 : 또한 낮은 수준 WebSocket을 네트워크 API를 사용할 수 있습니다.

0

Javascript가 정보 만 보내고받는 것처럼 들리는 것 같습니다. 그럴 경우 행운을 얻습니다. 당신도 Javascript와 Python을 같은 머신에서 돌리고 있다고 생각합니다.

브라우저가 실행되는 컴퓨터에서 Python 웹 서버를 실행하십시오. 다음은 간단한 예제 : 메시지 Hello World!

http://webpy.org/install

일단 브라우저에서 http://127.0.0.1:8080/ 방문 부여합니다, 당신은 등을 예를 http://127.0.0.1:8080/report_data, http://127.0.0.1:8080/report_event에 대한 귀하의 웹 사이트에 더 많은 주소를 추가 할 수 있습니다

자바 스크립트는 수 jQuery.ajax 또는 XMLHTTPRequest을 사용하여 Ajax 요청을 http://127.0.0.1:8080/report_data 주소로 만들고 정보를 GET 매개 변수로 전달하십시오.

+0

죄송합니다. 정확하지 않습니다. Javascript가 파이썬이 처리 한 정보를 기반으로 함수를 실행하기 위해서는 JavaScript에 정보를 보낼 수 있도록 파이썬이 필요합니다. – user2740392

+0

그러면 'json.dumps'를 사용하여 파이썬에서 데이터를 인코딩하고'web.header'를 사용하여'Access-Control-Allow-Origin' 헤더를 응답에 추가 할 수 있으며 브라우저에서'JSON.parse' 응답을 읽을 수 있습니다. – r3m0t

관련 문제