selenium控制浏览器操作

控制浏览器有哪些操作?

  • 控制页面大小
  • 前进、后退
  • 刷新
  • 自动输入、提交
  • ........

 控制页面大小,实例:

函数:

browser.set_window_size(400,800)
 # -*- coding:utf-8 -*-
from selenium import webdriver
import time # 打开chrome浏览器
browser = webdriver.Chrome() #chrome_options=option
browser.get("https://www.baidu.com") browser.find_element_by_id('kw').send_keys('selenium')
#browser.find_element_by_link_text("网页").click()
time.sleep(3)
print("设置浏览器宽480、高800显示")
browser.set_window_size(400,800)
time.sleep(3)
browser.quit() #关闭浏览器

前进、后退

# -*- coding:utf-8 -*-
#导入webdrive
from selenium import webdriver
import time browser = webdriver.Chrome()#定义驱动浏览器 #访问百度首页
first_url = "http://www.baidu.com"#定义一个变量,将网页指向
browser.get(first_url)# 打开浏览器,及页面
time.sleep(3) #访问新闻首页
second_url = "http://news.baidu.com/"#定义一个变量,将网页指向
print("打开 %s"%(second_url))#打印网页的操作动向
browser.get(second_url)# 打开浏览器,及页面
time.sleep(3) #返回,后退到百度首页
print("back to %s"%(first_url))#打印网页的操作动向
browser.back()#后退
time.sleep(3) #前进到新闻页面
print("forard to %s"%(second_url))#打印网页的操作动向
browser.forward()# #前进
time.sleep(2)
browser.refresh()
time.sleep(2) browser.quit() #关闭

刷新页面

# -*- coding:utf-8 -*-
from selenium import webdriver
import time first_url = "https://www.baidu.com" browser = webdriver.Firefox() browser.get(first_url) browser.refresh() #此处报错,原来写的是search_3.refresh();不对,应该是对浏览器的一个刷新
browser.quit()

自动输入、提交

# -*- coding:utf-8 -*-
from selenium import webdriver
import time
browser = webdriver.Chrome() browser.get("http://www.baidu.com") text = browser.find_element_by_id('kw')
text.send_keys('selenium')
text.submit()
time.sleep(2)
browser.find_element_by_id('kw').clear()
time.sleep(2)
browser.find_element_by_id('kw').click()
time.sleep(2)
browser.quit()

其他常用方法:

  • 获的输入框的尺寸
  • 返回页面底部的备案信息
  • 返回元素属性
  • 返回元素的结果是否可见
# -*- coding:utf-8 -*-
from selenium import webdriver
import time browser = webdriver.Chrome()
browser.get("https://www.nutsvpn.com/") #获得输入框的尺寸
size = browser.find_element_by_id('kw').size
print(size)
time.sleep(3) #返回页面底部的备案信息
text = browser.find_element_by_id('cp').text
print(text)
time.sleep(3)
#返回元素的属性值,可以是ID NAME TPYE
attribute = browser.find_element_by_id("kw").get_attribute('type')
print(attribute)
time.sleep(3)
#返回元素的结果是否可见,返回结果为True或False
result = browser.find_element_by_id('kw').is_displayed() print(result)
time.sleep(3)
browser.quit()

selenium控制浏览器操作的更多相关文章

  1. Selenium3 + Python3自动化测试系列三——控制浏览器操作

    控制浏览器操作 控制浏览器窗口大小 在测试过程中,我们在打开浏览器后,根据需求可自定义调整浏览器的尺寸大小.WebDriver提供了set_window_size()方法来设置浏览器的大小. 如果页面 ...

  2. 通过selenium控制浏览器滚动条

    目的:通过selenium控制浏览器滚动条 原理:通过 driver.execute_script()执行js代码,达到目的 driver.execute_script("window.sc ...

  3. Selenium系列(22) - 通过selenium控制浏览器滚动条的几种方式

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  4. Selenium系列(二) - 控制浏览器操作的详细解读

    如果你还不想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识 ...

  5. selenium - 控制浏览器窗口的大小和浏览器最大化

    1.控制浏览器大小 有些前端的页面需要查看在不同像素下的兼容情况,比如把像素设置为 480*800,然后截图看看页面显示有没有问题 WebDriver 提供了 set_windows_size() 方 ...

  6. 《手把手教你》系列技巧篇(二十六)-java+ selenium自动化测试-浏览器操作(详细教程)

    1.简介 在Web自动化的操作中,我们通常需要使用一些方法来操作浏览器,今天就来学习一下.这一篇宏哥主要是介绍一下,在自动化测试的时候,我们常见的一些浏览器操作有哪些,宏哥将会一一介绍和讲解. 2.浏 ...

  7. selenium java 浏览器操作

    环境搭建 selenium 2.53 selenium-java-2.53.0.jar selenium-java-2.53.0-srcs.jar 原代码包 拷贝的工程lib下,做build path ...

  8. selenium控制浏览器

    1.要把浏览器设置为全屏,否则有些元素是操作失败的,如对下图进行操作按钮是失败的,因为按钮没有显示出来 2.设置浏览器的宽.高 3.控制前进.后退(不建议使用driver.black().driver ...

  9. python3 scrapy 使用selenium 模拟浏览器操作

    零. 在用scrapy爬取数据中,有写是通过js返回的数据,如果我们每个都要获取,那就会相当麻烦,而且查看源码也看不到数据的,所以能不能像浏览器一样去操作他呢? 所以有了-> Selenium ...

随机推荐

  1. .sarut后缀病毒,勒索病毒

    前两天朋友的电脑中所有的文件后缀名都被改为.sarut 一看就是中了勒索病毒 每个文件夹下都有一个勒索信 查资料后发现这个病毒是STOP病毒的变种 可能是朋友使用windows激活工具了,然后这个病毒 ...

  2. K8s 实践 | 如何解决多租户集群的安全隔离问题?

    作者 | 匡大虎  阿里巴巴技术专家 导读:如何解决多租户集群的安全隔离问题是企业上云的一个关键问题,本文主要介绍 Kubernetes 多租户集群的基本概念和常见应用形态,以及在企业内部共享集群的业 ...

  3. nacos-docker安装nacos并配置数据库

    拉取nacos/nacos-server镜像 docker pull nacos/nacos-server 配置数据库(MySQL) 创建存储nacos配置的数据库 create database n ...

  4. 两个关于 Java 面试的 Github 项目

    哈喽,大家好.相信大家都知道金九银十,在人才市场上是指每年的 9 月和 10 月是企业的招聘高峰期.这个时候企业往往有大量招聘需求,求职者在这个时候就找工作无疑是最适合的.需求大,谈工资什么的就更容易 ...

  5. net 转 java

    一,初衷 从事net 工作已经将近4年,net 很好,C#本身也是个优雅的语言,vs 编辑器功能也异常强大,光拖动断点这个功能java idea就无法实现.但是分布式,架构师的net 在国内岗位上比较 ...

  6. Java架构师中的内存溢出和内存泄露是什么?实际操作案例!

    JAVA中的内存溢出和内存泄露分别是什么,有什么联系和区别,让我们来看一看. 01 内存泄漏 & 内存溢出 1.内存泄漏(memory leak ) 申请了内存用完了不释放,比如一共有 102 ...

  7. LeetCode10 Hard,带你实现字符串的正则匹配

    本文始发于个人公众号:TechFlow 这是LeetCode的第10题,题目关于字符串的正则匹配,我们先来看题目相关信息: Link Regular Expression Matching Diffi ...

  8. Oracle RAC服务器重启故障排查

    Oracle Real Application Clusters(Oracle RAC),相对于Oracle单实例来说部署安装和维护都增加了难度,尤其在日常的维护和故障处理过程中,各种日志的查看更加重 ...

  9. 树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据

    树莓派通过模数转换芯片ADC0832读取LM35温度传感器数据 今天和小朋友一起玩树莓派,打算来做一个测量室温的小实验.经过几个小时的研究和测试,终于能够成功读取LM35传感器的温度数据了.本文主要记 ...

  10. 个人第四次作业Alpha2版本测试

    个人第四次作业Alpha2版本测试 这个作业属于哪个课程 软件工程 这个作业要求在哪里 作业要求 团队名称 GP工作室 这个作业的目标 对其他小组的项目进行测试 测试人员 陈杰 学号 20173102 ...