您将如何使用 python urllib2 登录到这样设置的网站
下面是表单上的 javascript 处理程序和 onsubmit。我将如何在 python 中处理这个?
<script>
function handleLogin() {document.login.un.value = document.login.username.value;document.login.width.value = screen.width;document.login.height.value = screen.height;}
</script>
下面是包含要作为帖子发送的所有组件的 html 表单。让我坚持的是 onsubmit 功能。
<form id='login' name='login' method='post' onsubmit="handleLogin();" action='login.php'>
<input class="txtbox glow" type="text" id="username" name="username" value="blanksss">
<input class="txtbox glow" type="password" id="password" name="pw" size="18" autocomplete="off" onkeypress="checkCaps(event)">
<input class="checkbox" type="checkbox" id="rememberUn" name="rememberUn" checked="checked">
<input class="loginButton" type="submit" id="Login" name="Login" value="Login">
</form>
我拥有的适用于没有 javascript 的简单网站的 Python 代码是:
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.addheaders.append(('User-agent', 'Mozilla/4.0'))
opener.addheaders.append( ('Referer', 'https://login.site.com/') )
login_data = urllib.urlencode({'username' : 'mylogin',
'pw' : 'mypass',
'Login' : 'Login',
'rememberUn' : 'checked'
})
resp = opener.open('https://login.site.com/', login_data)
website = opener.open('https://eu1.site.com/a03/o')
bowl = BeautifulSoup(website)
关于如何处理 javascript 代码然后将完成的结果发布到表单的操作的任何想法?
谢谢