2013-08-16 2 views
1

그래서 처음 프로그래밍을하고 파이썬/기계화를 사용하여 웹 사이트에 로그인하는 것을 자동화하려고합니다. 그래서 내 코드입니다 :파이썬을 이용한 자동 로그인

import mechanize 
import cookielib 

# 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) 

# Want debugging messages? 
br.set_debug_http(True) 
br.set_debug_redirects(True) 
br.set_debug_responses(True) 


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')] 

br.add_password('http://newiso.accellion.net/w', 'USERNAME', 'PASSWORD') 
br.open('http://newiso.accellion.net/w') 


# Show the html title 
print br.title() 

# Show the response headers 
print br.response().info() 

# Show the available forms 
for f in br.forms(): 
    print f 

br.form["g_username"] = "USERNAME" 
br.form["password"] = "PASSWORD" 

import urllib 
opener = urllib.FancyURLopener() 
print opener.open('http://USERNAME:[email protected]/').read() 

와 나는이 오류가 계속 :

Traceback (most recent call last): 
File "/Users/dancetrina/Documents/login.py", line 45, in <module> 
br.form["g_username"] = "USERNAME" 
TypeError: 'NoneType' object does not support item assignment 

가 나는 사용자 이름/암호를 입력하는 기계화 사용할 수 없다는 뜻인가를? 아니면 내가 누락 된 뭔가가 작동하게 만들 것입니까? 미리 감사드립니다. 마지막으로 (그리고 :-)) for 루프에서

+0

실제 로그인 양식이 있는가, 아니면 HTTP 인증 헤더를 사용한다? – Blender

+0

@Blender 예 실제 로그인 양식이 있습니다. – bleachtsubasa

답변

1

, 당신은 작성해야 :

f.form["g_username"] = "USERNAME" 
f.form["password"] = "PASSWORD" 
+0

어쨌든 지금이 정보를 얻고 있습니까? Traceback (최근 통화 마지막) : 파일 "/Users/dancetrina/Documents/login.py", 줄 44, f .getattr (HTMLForm, name) AttributeError : class .filename : "form/build/bdist.macosx-10.6-intel/egg/mechanize/_form.py"파일은 __getattr__에 있습니다. HTMLForm에 'form'속성이 없습니다. – bleachtsubasa

관련 문제