(一) 前言
很高兴各位的支持,上了热搜榜!前面我们已经基本掌握了selenium定位页面元素的基本方法,因此,在此基础上,我们将在本篇介绍关于控制浏览器操作的一些方法,带大家深入了解selenium,我相信你为对此深感兴趣,因为,selenium很可能实现你儿时的梦想(哈哈哈!)
如果你是大佬,可能这里也有你想不到的细节收获,也请你多多指正;如果你是小白,我相信你可以在这系列文章中找到学习python的乐趣;所以,一键三连加关注,博主带你不迷路。
(二)控制浏览器
1. 控制浏览器的一些方法
方法 | 说明 |
---|---|
set_window_size() | 设置浏览器的大小 |
back() | 控制浏览器后退 |
forward() | 控制浏览器前进 |
refresh() | 刷新当前页面 |
clear() | 清除文本 |
send_keys (value) | 模拟按键输入 |
click() | 单击元素 |
submit() | 用于提交表单 |
get_attribute(name) | 获取元素属性值 |
is_displayed() | 设置该元素是否用户可见 |
size | 返回元素的尺寸 |
text | 获取元素的文本 |
(三)实例演示
1.1设置浏览器的大小
使用方法:set_window_size()
1.2代码及成果展示
from selenium import webdriver
driver=webdriver.Chrome()# 获取Chrome浏览器对象
#driver=webdriver.Firefox() 获取火狐浏览器对象
driver.set_window_size(300,300) #设置窗口大小为300px*300px
2.1综合实例实现网页自动登录
在使用爬虫时,总有些网页需要实现登录,因此可以用selenium来帮你实现自动登录,惊讶不,惊喜不,那就对了,继续看下去!
使用方法: send_keys (value)+click()
2.2代码及成果展示
提示:你需要先使用定位,从而定位到页面输入框输入内容,然后进行点击登录按钮,从而实现自动登录
from selenium import webdriver
import time#导入time库
driver=webdriver.Chrome()# 获取Chrome浏览器对象
#driver=webdriver.Firefox() 获取火狐浏览器对象
driver.get("http://www.baidu.com") #进入百度首页
time.sleep(2) #睡2秒,防止加载速度跟不上代码执行速度而报错
denglu=driver.find_element_by_xpath('//*[@id="s-top-loginbtn"]') #通过xpath定位到登录按钮,用denglu接收元素对象
denglu.click() #进行对登录按钮的点击
from selenium import webdriver
import time#导入time库
driver=webdriver.Chrome()# 获取Chrome浏览器对象
#driver=webdriver.Firefox() 获取火狐浏览器对象
driver.get("http://www.baidu.com") #进入百度首页
time.sleep(2) #睡2秒,防止加载速度跟不上代码执行速度而报错
denglu=driver.find_element_by_xpath('//*[@id="s-top-loginbtn"]') #通过xpath定位到登录按钮,用denglu接收元素对象
denglu.click() #进行对登录按钮的点击
time.sleep(2)
login=driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_11__footerULoginBtn"]')#通过xpath定位到用户名登录按钮,用login进行接收
login.click()#进行对用户名登录按钮的点击
下面给出全代码实现百度登录(注意是你的用户名和密码哈)
from selenium import webdriver
import time#导入time库
driver=webdriver.Chrome()# 获取Chrome浏览器对象
#driver=webdriver.Firefox() 获取火狐浏览器对象
driver.get("http://www.baidu.com") #进入百度首页
time.sleep(2) #睡2秒,防止加载速度跟不上代码执行速度而报错
denglu=driver.find_element_by_xpath('//*[@id="s-top-loginbtn"]') #通过xpath定位到登录按钮,用denglu接收元素对象
denglu.click() #进行对登录按钮的点击
time.sleep(2)#这里必须进行睡觉,不然操作太快,会报错
login=driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_11__footerULoginBtn"]')#通过xpath定位到用户名登录按钮,用login进行接收
login.click()#进行对用户名登录按钮的点击
user=driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_11__userName"]')
user.send_keys("你的用户名哦")
time.sleep(2)#睡上2秒
password=driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_11__password"]')
password.send_keys("你的登录密码哦!")
time.sleep(1)
#下面点击登录就自动登录啦
driver.find_element_by_xpath('//*[@id="TANGRAM__PSP_11__submit"]').click()
如果登录成功,就请评论有用有用哦;否则打出就这就这!!
(四)嘻嘻
本篇只列出了部分方法的展示,其他方法还需各位自己多加尝试哦,有疑问的在评论区留下你的疑惑,博主会耐心一一解答。
希望我能吊起你的兴趣,不不,是我的文章哈。
后续将不断更新关于selenium的相关知识,愿我能勾起你的兴趣!