text获取文本元素
【摘要】 text获取元素文本对操作对象进行.text方法就能获取到元素文本# 清除输入框clear()from selenium import webdriverimport timedriver = webdriver.Chrome()# 打开音乐服务器的登入页面driver.get('http://43.142.82.4:8080/login.html')time.sleep(3)# 定位到用...
text获取元素文本
对操作对象进行
.text
方法就能获取到元素文本
# 清除输入框clear()
from selenium import webdriver
import time
driver = webdriver.Chrome()
# 打开音乐服务器的登入页面
driver.get('http://43.142.82.4:8080/login.html')
time.sleep(3)
# 定位到用户名的label,获取到text文本内容
date = driver.find_element_by_xpath('/html/body/div/form/div[1]/label').text
print(date)
time.sleep(3)
driver.quit()
添加等待
sleep休眠
添加休眠等待非常简单只需要引入
time
模块即可,通过模块下的sleep
方法添加固定的休眠时间!
# 导入模块
import time
# 休眠3秒
time.sleep(3)
隐式等待
通过
webdiver
模块下的implicitly_wait()
方法就可以实现智能等待,咱这个等待方式比time.sleep
较智能,后者无论是否已经等待到都要等待固定时间,类似于等人,就算提前等到也好一起等待完固定时间再进行后续工作,而implicitly_wait()
方式就是提前等到了,那就提前结束等待!
隐式地等待并非一个固定的等待时间,当脚本执行到某个元素定位时,如果元素可以定位,则继续执行;如果元素定位不到,则它以轮询的方式不断的判断元素是否被定位到。直到超出设置的时长!
# 通过css selector 通过css空间的属性名进行定位!
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("http://baidu.com/")
#定位输入框
driver.find_element_by_css_selector('#kw').send_keys('俄乌冲突')
driver.implicitly_wait(3000) # 隐式等待3000秒
#css selector方式定位到搜索按钮
driver.find_element_by_css_selector('#su').click()
time.sleep(3)
driver.quit()
打印信息
- 打印title
将页面的title打印出来
- 打印url
将url打印
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.maximize_window()
driver.get('http://baidu.com/')
# 打印title 和 url
print("title:",driver.title,"\n","url:",driver.current_url)
driver.quit()
浏览器操作
-
浏览器最大化
webdriver
模块下的.maximize_window()
方法 -
设置浏览器宽、高
.set_window_size(width, high)
设置浏览器的宽和高 -
操作浏览器的前进、后退
#浏览器的前进 browser.forward()
#浏览器的后退 browser.back()
-
控制浏览器滚动条
浏览器滚动条的控制要依靠js
脚本
#将浏览器滚动条滑到最顶端
document.documentElement.scrollTop=0
#将浏览器滚动条滑到最底端
document.documentElement.scrollTop=10000
#将浏览器滚动条滑到最底端, 示例
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)
#其中,execute_script(script, *args),在当前窗口/框架同步执行javaScript
代码示例
# 浏览器操作
from selenium import webdriver
import time
driver = webdriver.Chrome()
#浏览器最大化
driver.maximize_window()
time.sleep(2)
# 设置浏览器宽,高
driver.set_window_size(400,300)
time.sleep(2)
# 浏览器最大化
driver.maximize_window()
driver.get('http://baidu.com/')
driver.find_element_by_id('kw').send_keys('中国')
driver.find_element_by_id('su').submit()
time.sleep(2)
#浏览器后退
driver.back()
time.sleep(2)
#浏览器前进
driver.forward()
time.sleep(2)
#操作浏览器滚动条到滚动到底端
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)
time.sleep(2)
# 滚动到顶端
js = 'var w = document.documentElement.scrollTop=0'
driver.execute_script(js)
time.sleep(3)
driver.quit()
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)