Python机械化登录帐户 - 表单不提交

时间:2015-01-27 15:52:45

标签: python forms authentication mechanize

我正在尝试使用Python登录我的银行网站并进行机械化。

https://chaseonline.chase.com/Logon.aspx

我查看了之前发布的所有内容但仍无法登录。我认为这可能与我提交表单的方式有关。提交按钮的HTML是:

<input type="image" id="logon"
src="https://chaseonline.chase.com/images/logon.gif" onclick="return
check_all_fields_logon_RSA_Auth(document.getElementById('UserID'),
document.getElementById('Password'));" width="58" height="21" border="0"
title="Log On" tabindex="7">

以下是我使用的脚本:

import mechanize
from bs4 import BeautifulSoup
import urllib2 
import cookielib
from time import sleep

chase_url = 'https://chaseonline.chase.com/Logon.aspx'

# Browser 
br = mechanize.Browser() 

# Enable cookie support for urllib2 
cookiejar = cookielib.LWPCookieJar() 
br.set_cookiejar( cookiejar ) 

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

# Refresh handle 
br.set_handle_refresh( mechanize._http.HTTPRefreshProcessor(), max_time = 1 ) 

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

# authenticate 
br.open(chase_url) 
br.select_form( nr=0 ) 

br.form['UserID'] = 'joe1234'
br.form['Password'] = '123456'
br.submit() 

print "Success!\n"

sleep(10)

print br.title()

如果登录有效,那么页面应为&#34;追踪在线 - 我的帐户&#34;

我做错了什么?

1 个答案:

答案 0 :(得分:0)

几个月前,我试图做类似的事情,但是和ESPN一样。机械化给了我一些问题,然后有人给了我答案。

答案是硒。 https://selenium-python.readthedocs.org/getting-started.html

否则,运行脚本时到底出了什么问题?它会产生错误吗?这个错误说的是什么?