2010-12-12 2 views
2

다음 코드를 사용하여 megaupload에 로그인하려고합니다. 내 질문은 성공적으로 로그인 한 것입니다. 코드의 끝에 현재 URL을 인쇄하지만 스크립트를 실행하면 www.megaupload.com 만 반환됩니다. (필요에 따라 조정할, 간단한 예)mechanize를 사용하여 megaupload에 로그인하십시오.

"Username and password do not match" in br.response().read() 

아니면 예상 쿠키를 가지고 있는지 확인 :

import mechanize 
import cookielib 
from BeautifulSoup import BeautifulSoup 
import html2text 

# Browser 
br = mechanize.Browser() 

# Cookie Jar 
cj = cookielib.LWPCookieJar() 
br.set_cookiejar(cj) 

# Browser options 
br.set_handle_equiv(True) 
br.set_handle_gzip(True) 
br.set_handle_redirect(True) 
br.set_handle_referer(True) 
br.set_handle_robots(False) 

# Follows refresh 0 but not hangs on refresh > 0 
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) 

# User-Agent (this is cheating, ok?) 
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')] 

# The site we will navigate into, handling it's session 
br.open('http://www.megaupload.com/?c=login') 

# Select the first (index zero) form 
br.select_form('loginfrm') 

#User credentials 
br.form['username'] = 'USERNAMEGOESHERE' 
br.form['password'] = 'PASSWORDGOESHERE' 

br.submit() 


#prints out the current log in 
print br.geturl() 

답변

3

응답 본문에서 오류 메시지를 검색

any(c.domain == ".megaupload.com" and c.name == "user" for c in cj) 
+0

감사합니다, 나는 실제로 "환영 사용자 이름"을 확인할 수있었습니다. 나는 당신을 업 그레 이드하려고 시도했지만 나는 새로운 사용자이고 나는 그렇게 할 수 있기 전에 "15 평판"을 요구합니다. – ChrisC

+0

@ user520574 답변으로 선택하실 수 없습니까? 뭐, 신경 쓰지 마. – tokland

+0

대답으로 선택할 수 있었지만 전에는 그 옵션을 보지 못했습니다. 다시 한번 감사드립니다. – ChrisC

관련 문제