2012-02-09 5 views
1

그래서이 파이썬 스크립트를 사용하여 사이트에 자동으로 로그인하려고합니다.iframe 내부에 파이썬으로 양식을 채우는 방법

from win32com.client import Dispatch 
import win32com.client 
import time,ids 

IE=Dispatch("InternetExplorer.Application") 
IE.Visible=1 
IE.Navigate("Source.html") 
while IE.ReadyState != 4: # Wait for browser to finish loading. 
    time.sleep(1) 
doc = IE.Document # Get the document. 
while doc.readyState != "complete": # Wait for document to finish 
    time.sleep(1) 
doc.Login.USER.value = ids.username  
doc.Login.PASSWORD.value = ids.password 
doc.Login.submit() 
while IE.ReadyState != 4: # Wait for browser to finish loading. 
    time.sleep(1) 
doc = IE.Document # Get the document. 
while doc.readyState != "complete": # Wait for document to finish 
    time.sleep(1) 
time.sleep(30) 
IE.Application.Quit(); 

정상적인 사이트에서는 정상적으로 작동하지만 Source.html은 Iframe에 사이트를로드합니다. 그래서 사용자 이름과 비밀번호 입력란은 Iframe 안에 있으며 데이터를 입력하는 방법을 모릅니다.

+0

try selenium http://seleniumhq.org/ – nosklo

답변

0

id를 통해 iframe 요소에 액세스 해보세요.

당신의 부하가 다음 그 안에 요소, 사용자 코드에서

<iframe id='myframe'>

이런 식으로 뭔가를하려고 한 페이지/문서의 라인 긴 뭔가를, doc.myframe.Login.user

당신이 할 수있는 한 가지 일은 python REPL을 열고 doc 객체로 놀아 당신이 찾고자하는 요소에 접근하는 방법을 알아내는 것입니다.

관련 문제