本篇文章和大家了解一下使用selenium模拟动态登录百度页面的实现方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
目标:模拟手动登录百度页面的过程,打开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模拟动态登录百度页面的实现方法的简略介绍,当然详细使用上面的不同还得要大家自己使用过才领会。如果想了解更多,欢迎关注亿速云行业资讯频道哦!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。