Python 使用脚本登录到网站
我实际上正在编写一个windows脚本,单击该脚本将打开我的默认web浏览器,打开一个页面,输入我的登录详细信息,然后提交表单 到目前为止,我所能做的就是用以下方法打开浏览器:Python 使用脚本登录到网站,python,Python,我实际上正在编写一个windows脚本,单击该脚本将打开我的默认web浏览器,打开一个页面,输入我的登录详细信息,然后提交表单 到目前为止,我所能做的就是用以下方法打开浏览器: explorer http:\\outlook.com\website.com 由于我找不到任何说明如何执行此操作的资源,我查看了python脚本并找到了两个库,即urllib和webbrowser。我知道urllib是用来抓取网站的。但我不知道如何在web浏览器中模拟同样的情况。webbrowser库只有在新选项卡等
explorer http:\\outlook.com\website.com
由于我找不到任何说明如何执行此操作的资源,我查看了python脚本并找到了两个库,即urllib
和webbrowser
。我知道urllib
是用来抓取网站的。但我不知道如何在web浏览器中模拟同样的情况。webbrowser
库只有在新选项卡等中打开页面的命令
请告诉我如何使用python或windows脚本完成此任务
编辑:我将用户名和密码保存在浏览器中,以便自动填充。我只想模拟按下“回车”键。IEC
对我来说,从Python控制浏览器最容易使用的选项是。我发现像你描述的那样简单的东西很容易用
IEC是一个python库,旨在帮助您自动化和控制Internet Explorer窗口。您可以使用此库导航到网页,读取各种HTML元素的值,设置复选框、文本框、单选按钮等的值,单击按钮并提交表单
此库的典型用途包括:
- 编写测试脚本以自动检查web应用程序
- 自动管理在线帐户
- 自动记录和下载网络邮件
- 定期监视基于web的应用程序的故障
selenium
。要安装它,请执行以下操作:
$ pip install -U selenium
这里有一些关于如何使用Chrome on以selenium
登录站点的详细信息。重要的部分是:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
chromedriver = 'C:\\chromedriver.exe'
browser = webdriver.Chrome(chromedriver)
browser.get('http:\\outlook.com\website.com')
username = selenium.find_element_by_id("username")
password = selenium.find_element_by_id("password")
username.send_keys("YourUsername")
password.send_keys("Pa55worD")
selenium.find_element_by_name("submit").click()
是一种设计用于测试网站的工具,因此它能够管理多种浏览器
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
browser = webdriver.Firefox()
browser.get("http:\\outlook.com\website.com")
time.sleep(10)
username = browser.find_element_by_id("user_input_id")
password = browser.find_element_by_id("password_input_id")
username.send_keys("your_username")
password.send_keys("your_password")
login_attempt = browser.find_element_by_xpath("//*[@type='submit']")
login_attempt.submit()
要检索默认浏览器名称,可以使用并创建webbrowser类类型和selenium浏览器驱动程序之间的映射
browser = webbrowser.get()
print browser.__class__
前面所有的答案都是正确的,这是Chrome和Facebook的一个例子。 您可以使用相同的代码,但需要更改它正在查找的元素,当然,您必须提供正确的url、用户名和密码 注意:这是在Macbook上进行的测试
cd /tmp
wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_mac64.zip
unzip chromedriver_mac64.zip -d /usr/local/bin
u'\ue007'
是selenium.webdriver.common.keys库中的输入代码。
您可以在发送用户名和密码后尝试按“回车”
username = browser.find_element_by_id("user_input_id")
username.send_keys("myUserName") username.send_keys(u'\ue007')
password = browser.find_element_by_id("password_input_id")
password.send_keys("myPassword") password.send_keys(u'\ue007')
这里回答了一个类似的问题:我认为这接近我想要的。但是我没有得到饼干的那部分。我只想访问字段并点击“登录”。我也希望这是普遍的。因此,使用其他浏览器作为默认浏览器的用户也可以使用此脚本。的可能重复。如果你想,以后,添加多个简单的按键看看
username = browser.find_element_by_id("user_input_id")
username.send_keys("myUserName") username.send_keys(u'\ue007')
password = browser.find_element_by_id("password_input_id")
password.send_keys("myPassword") password.send_keys(u'\ue007')