使用selenium模拟动态登录百度页面的实现

2023-05-20 05:05:07 登录 页面 模拟

目标:模拟手动登录百度页面的过程,打开chrome浏览器,输入百度网址,进入百度网页,点击登录,输入账号和密码,进入登录页面。

代码演示过程:

from selenium import WEBdriver
import time
# 1.打开浏览器
driver = webdriver.Chrome()
# 2.设置地址
url = "https://www.baidu.com/"
# 3.访问网址
driver.get(url)

访问到百度页面后,需要模拟点击“登录”按钮。找到“登录”按钮的元素如下所示:

根据id = ‘u1’和class=’lb’找到“登录”按钮

# 4.分析网页,找到登录元素
# login = driver.find_elements_by_id('u1').find_elements_by_class_name('lb')[0]   #方法一
#
login = driver.find_elements_by_CSS_selector('div[id=u1] a[class=lb]')[0]   #方法二
#5.点击登录按钮
login.click()

*注意点击登录按钮以后,要稍微等待一会。 点击登录以后,界面如下:

接下来需要模拟点击“用户名登录”按钮,找到“用户名登录”按钮的元素如下所示:

根据p标签下的class=”tang-pass-footerBarULogin pass-link”找到用户名登录,注意这个class里有两个同级类名,中间有个空格,在css选择器里写的时候就只需要写一个类名就行,否则中间有空格,如果写成’p.tang-pass-footerBarULogin pass-link’,就表示p标签下的类名为tang-pass-footerBarULogin的下一个类名为pass-link的类。

#点击之后要加等待时间
time.sleep(2)
#6.找到登录界面的 用户名登录
#选择p标签下的class,<p class="tang-pass-footerBarULogin pass-link">
usernamelogin = driver.find_elements_by_css_selector('p.tang-pass-footerBarULogin')[0]
#7.点击它,进入账号密码输入界面
usernamelogin.click()

点击“用户名登录”后,进入输入账号和密码界面。 找到账号输入框的元素如下所示:

找到密码输入框的元素如下所示:

找到登录输入框的元素如下所示:

#点击之后要加等待时间
time.sleep(2)
#8.找到 输入 用户名 和密码框,并且设置内容
#<input id="TANGRAM__PSP_10__userName">
username = driver.find_element_by_id('TANGRAM__PSP_10__userName')
#输入账号名
username.send_keys('xxxxx')
time.sleep(1)
#<input id="TANGRAM__PSP_10__passWord">
password = driver.find_element_by_id('TANGRAM__PSP_10__password')
#输入密码
password.send_keys('xxxxxx')
time.sleep(1)
#<input id="TANGRAM__PSP_10__submit">
submit = driver.find_element_by_id('TANGRAM__PSP_10__submit')
submit.click()

到此这篇关于使用selenium模拟动态登录百度页面的实现的文章就介绍到这了,更多相关selenium模拟动态登录百度页面内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关文章