1

我想使用 python 在网页上填写并提交表单。

这种形式:

<form method="POST" id="login" action="site/enter.php" >
  <input type="text" placeholder="Login" name="login" class="login" tabindex="1">
  <input type="password" placeholder="Password" name="psw" class="password" tabindex="2">
  <input type="submit" class="btn_auth" value="" title="Enter" tabindex="3">
</form>

但是做不到。我放置登录并通过,但无法模拟提交按钮。

4

1 回答 1

2

使用 selenium 的 Webdriver 来驱动网页比使用 mechanize 之类的东西要容易得多。特别是如果页面是动态创建的。

您需要安装硒。pip install selenium应该管用。您还需要安装 Firefox 版本。

from selenium import webdriver

browser = webdriver.Firefox()
browser.implicitly_wait(5)
browser.get('http://some_url.com')
browser.find_element_by_id('login').send_keys('your_login') 
browser.find_element_by_name('pws').send_keys('your_password')
browser.find_element_by_class_name('btn_auth').click() 

print browser.page_source
browser.close()
于 2012-07-31T14:44:43.190 回答