1

HTML HTML 웹 사이트와 상호 작용하려고합니다. 난독 화 된 자바 스크립트를 사용하여 일반 HTML 요소를 숨 깁니다. 제가하고 싶은 것은 폼을 채우고 반환 된 결과를 읽는 것입니다. 그리고 이것은 예상했던 것보다 더 어렵게 증명됩니다.난독 화 된 자바 스크립트를 구문 분석하고 상호 작용합니다.

Firebug를 사용하여 페이지를 읽으면 소스 코드의 난독 화가 생겨서 이것을 수행하여 원하는 것을 수행 할 수 있습니다. Firebug 출력은 원래 소스에 숨겨진 - 태그 등의 모든 웹 사이트의 일반적인 요소를 보여주었습니다.

나는 다른 응용 프로그램과 상호 작용하기 위해 mechanize를 사용하여 Python으로 나머지 응용 프로그램을 작성 했으므로 가능한 경우 기존 Python 모듈을 사용하고 싶습니다. 문제는 기계화가 이해할 수있는 방법으로 소스 코드를 읽는 것뿐만 아니라 웹 서버가 해석 할 수있는 응답을 생성하는 방법도 있습니다. html 코드가 난독 화 되었더라도 정규화 된 컨트롤을 사용할 수 있습니까?

프로젝트 시작 부분에 기계화 대신 pywebkitgtk를 사용했지만 실제로 파이썬에서는 그다지 잘 구현되지 않았기 때문에 파기했습니다. 대부분의 기능이 없습니다. HTML을 읽는 웹킷 브라우저를 시작하고 기계로 그 브라우저를 사용하는 것이 합리적인 방법일까요?

도움이된다면 정말 도움이 될 것입니다. 감사!

편집 : 나는 그 pywebkitgtk와 기계화 개방에서 가져온 HTML을 덤핑 load_html_string를 사용하고 그런 식으로 HTML을 평가했습니다. 불행히도, 구문 분석하려는 문서가 더 많은 리소스를 동적으로로드하기 때문에이 스크립트는 리소스가로드 될 때까지 기다리지 않고 멈 춥니 다. 내가 먼저 로그인 할 수 있도록 mechanize의 CookieJar 함수를 사용하기 때문에 Webkit을 사용하여 문서 자체를로드 할 수는 없습니다.

웹킷에서 HTML을 덤프하려고했는데 어떤 이유로 든 웹 사이트를 완벽하게 표시하는 동안 난독 화 된 자바 스크립트 만 덤프했습니다. 웹킷이 파이어 버그가하는 것처럼 자바 스크립트를 덤프 할 수 있다면 깨끗한 코드에 따라 요청을 처리 할 수있다.

답변

1

페이지를 처리하려고하는 대신 Firebug를 사용하여 이름을 알아 낸다. 양식 필드를 누른 다음 httplib 또는 무엇이든 필요한 필드 및 설정과 함께 요청을 보낼 수 있습니까?

아약스를 사용하여 전송하는 경우 Firebug에서도 서버로 전송되는 값을 확인할 수 있어야합니다.

+0

+1 쉽게 만들 수 있습니다. 내 자신의 현재 프로젝트에서 urllib을 사용하는 * 매우 유사한 HTTP 요청에 대해 하나의 URL 필드를 증가시키는 것이 문자 그대로 기계화 된 페이지를 크롤링하는 것보다 훨씬 쉽습니다. –

+0

@Jani : 나는 이것을 시도 할 것 같아. 내가하고 싶은 일을 정확히 수행하는 액션 스크립트 코드를보고 있기 때문에 짜증나지만 내 프로젝트에는 Adobe Air 플랫폼을 사용할 수 없습니다. 나는 이것을 바로 잡을 것이다. 고맙습니다! – cmbrnt

+0

이것에 대해 조금 생각한 후에 문제가 있음을 깨달았습니다. 파싱해야하는 결과는 난독 화 된 자바 스크립트 코드에서도 반환 될 것입니다. 불행하게도이 솔루션을 불가능하게 만듭니다. – cmbrnt