python通过web门户登录
使用python登录web门户时出现问题。我试着使用其他帖子的建议 我尝试过使用twill(由于我运行的是Python 3.6,所以安装失败)-如果有人对我如何安装它有建议,请提供建议 我还尝试使用:python通过web门户登录,python,web-scraping,automation,scrape,webautomation,Python,Web Scraping,Automation,Scrape,Webautomation,使用python登录web门户时出现问题。我试着使用其他帖子的建议 我尝试过使用twill(由于我运行的是Python 3.6,所以安装失败)-如果有人对我如何安装它有建议,请提供建议 我还尝试使用: import requests url = 'http://example.com/userinfo.php' values = {'username': 'user', 'password': 'pass'} r = requests.post(url, data=val
import requests
url = 'http://example.com/userinfo.php'
values = {'username': 'user',
'password': 'pass'}
r = requests.post(url, data=values)
print(r.content)
没有运气
登录页面包含以下html
<form id="form" method="post" action="/" style="padding-left:20px;" class="form-horizontal">
<div class="control-group">
<label class="control-label" for="username">User Name:</label>
<div class="controls">
<input id="username" type="text" placeholder="User Name" autocomplete="off" autocorrect="off" autocapitalize="off">
</div>
</div>
<div class="control-group">
<label class="control-label" for="ba_password2">Password:</label>
<div class="controls">
<input id="ba_password2" type="password" placeholder="Password">
<input type="hidden" id="ba_username" name="ba_username">
<input type="hidden" name="ba_password">
<input type="hidden" name="ba_seed" value="614377365">
<input type="hidden" name="ba_salt" value="dgvwghgwuoyixgsrdhblkgigmtrhivbx">
<input type="hidden" name="ba_seedkey" value="-1647247092">
</div>
</div>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="rememberMe"> Remember me on this computer
</label>
<button id="ba_loginbut" type="submit" class="btn">Login</button>
</div>
</div>
<div class="msgHolder">
<div id="login-error-box" class="errormsg" style="display:none;">
<img src="/images/err.png"/>
<div id="login-error-msg"></div>
</div>
<div id="capslock" class="errormsg" style="display:none;">
<img src="/images/warn.png"/>
Caps lock is on.
</div>
</div>
</form>
用户名:
密码:
还记得我在这台电脑上吗
登录
帽子锁打开了。
我希望有人能帮忙。谢谢请考虑使用像
webbot
这样的库,它们甚至可以处理动态更改的网页元素的类和id。使用Python代码时必须如下所示:
#Open Firefox browser
driver = webdriver.Firefox()
#Enter email
elem = driver.find_element_by_id("username")
elem.clear()
elem.send_keys("email")
#Enter password
elem = driver.find_element_by_id("ba_password2")
elem.clear()
elem.send_keys("pass")
#Click button
elem = driver.find_element_by_id("ba_loginbut")
elem.click()
看起来除了用户名/密码之外,它还需要一些额外的变量,请参见隐藏的输入字段。我还尝试填写了值中的所有隐藏变量。没有骰子,是我不确定的种子,虽然,因为它会重新生成每次我重新刷新,你需要确定这些数据是如何发送的。检查页面,寻找可能的jQuery stuf,并将处理程序绑定到按钮。试着弄清楚当你点击登录按钮时它是如何处理事情的使用Selenium及其sendkeys方法