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. Spring中常见的设计模式——模板模式

    一.模板模式的应用场景 模板模式又叫模板方法模式(Template Method Pattern),指定义一个算法的骨架,并允许自雷为一个或者多个步骤提供实现.模板模式使得子类可以在不改变算法结果的情 ...

  2. jenkins +git+ssh 构建 .net项目

    jenkins +git+ssh 构建 .net项目 安装jenkins jdk 和插件就不一一介绍了. Multiple SCMs 插件介绍:可以获取多个项目(如果你的项目中有依赖其他项目的) So ...

  3. Linux下Docker的安装与使用

    yum安装Docker最新版和docker-compose(超级简单的安装方法) Install Docker 首先安装依赖 yum install -y yum-utils device-mappe ...

  4. BFT-SMaRt:用Java做节点间的可靠信道

    目录 一.引子 二.名词统一 1. 节点id 2. 节点 3. 本地节点 4. 配置域 5. TTP 6. 陌生域 三.节点服务类 四.节点通信系统概览 五.节点通信层准备 1. 创建socket服务 ...

  5. js字符数组转化为数字数组

    先谈一谈需求,我有一个字符串数组,数组内容是字符类型的数字,需要把字符类型的数字转换为数字类型,找了找资料,发现牛人真是多,把前辈的经验总结一下. 例子 ['1','2','3'] => [1, ...

  6. Flask快速实现简单python接口

    Flask 是一个轻量级 web 框架,自由.灵活.可扩展性强.Flask 本身相当于一个内核,大部分功能都需要扩展第三方库. Flask 框架有多“轻量”呢,之前写过一篇 Django实现restf ...

  7. npm 安装出现 run `npm audit fix` to fix them, or `npm audit` for details 解决办法

    1.npm  audit fix 2. npm audit fix --force 3.npm audit 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链 ...

  8. IDEA不编译空文件夹

    今天做项目的时候发现idea编译工程不会编译空文件夹,在resources下新建了个存储文件的空文件夹,编译后target里竟然没有,一直报空指针. 随便丢一个文件进去就行了,放一个demo.txt的 ...

  9. cf - 01串的问题

    One beautiful July morning a terrible thing happened in Mainframe: a mean virus Megabyte somehow got ...

  10. Spring Boot 事务的使用

    Spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement 开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactio ...