一、js的滑屏

1)以下脚本实现js滑屏
scroll="document.documentElement.scrollTop=800"#垂直滚动 px
scroll = "document.documentElement.scrollLeft=1000"#水平滚动
scroll="window.scrollTo(100,500)"#滚动到指定坐标
scroll="window.scrollBy(0,100)"#滑动到相对坐标
scroll="window.scrollTo(0,document.body.scrollHeight)"#获取body的高度,滑到底部
document.body.scrollWidth 获取body宽度

driver.execute_script(scroll)

2)滑动到指定元素
scroll="document.getElementById('xxxx').scrollIntoView(false)"
driver.execute_script(scroll)

 #encoding=utf-8
from selenium import webdriver
from time import sleep
import os driver=webdriver.Chrome()
url='file:///' + os.path.abspath(os.path.dirname(os.getcwd()))+'/html/注册A.html'
driver.maximize_window()
driver.get(url) # 1)以下脚本实现js滑屏
scroll="document.documentElement.scrollTop=800"#垂直滚动 px
# scroll = "document.documentElement.scrollLeft=1000"#水平滚动
# scroll="window.scrollTo(100,500)"#滚动到指定坐标
# scroll="window.scrollBy(0,100)"#滑动到相对坐标
# scroll="window.scrollTo(0,document.body.scrollHeight)"#获取body的高度,滑到底部
# document.body.scrollWidth 获取body宽度 # driver.execute_script() 专门用于执行JS脚本的
# driver.execute_script(scroll)
sleep(2)
driver.execute_script(scroll) # 2)滑动到指定元素
# scrollIntoView(false) 表示元素滚动到屏幕的底部
# scrollIntoView(true) 表示元素滚动到屏幕的中间
# scroll="document.getElementById('selectA').scrollIntoView(true)"
# driver.execute_script(scroll)

二、JS的日历操作

修改元素属性
js="document.getElementById('train_date').removeAttribute('readonly');"

#encoding=utf-8
from selenium import webdriver
from time import sleep
import os driver=webdriver.Chrome() driver.maximize_window()
driver.get('https://www.12306.cn/index/')
js="document.getElementById('train_date').removeAttribute('readonly');"
# 移除readonly属性
driver.execute_script(js)
sleep(2)
# 清空默认日期
driver.find_element_by_id('train_date').clear()
driver.find_element_by_id('train_date').send_keys('2019-02-28')

Selenium3+python自动化009- js之屏幕滑动和日历操作的更多相关文章

  1. Selenium3+python自动化 -JS处理滚动条

    selenium并不是万能的,有时候页面上操作无法实现的,这时候就需要借助JS来完成了. 常见场景: 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的. 这时候需要借 ...

  2. selenium3+python自动化50-环境搭建(firefox)

    前言 有不少小伙伴在安装selenium环境后启动firefox报错,因为现在selenium升级到3.0了,跟2.0的版本还有有一点区别的. 安装环境过程中主要会遇到三个坑: 1.'geckodri ...

  3. selenium3+python自动化50-环境搭建(firefox)【转载】

    前言 有不少小伙伴在安装selenium环境后启动firefox报错,因为现在selenium升级到3.0了,跟2.0的版本还有有一点区别的. 安装环境过程中主要会遇到三个坑: 1.'geckodri ...

  4. web端自动化——Selenium3+python自动化(3.7版本)-火狐62版本环境搭建

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium3为基础. 一.selenium简介 Sel ...

  5. web端自动化——Selenium3+python自动化(3.7版本)-chrome67环境搭建

    前言 目前selenium版本已经升级到3.0了,网上的大部分教程是基于2.0写的,所以在学习前先要弄清楚版本号,这点非常重要.本系列依然以selenium3为基础. 一.selenium简介 Sel ...

  6. Selenium3+python自动化006+自动化测试概述

    自动化测试概述 1.自动化分类: (1)单元测试自动化: 单元测试(Unit):模拟各种异常场景,外部依赖较少,且可以做测试单元到最小的一种测试方法. Java单元测试框架Junit.TestNG; ...

  7. Selenium2+python自动化-使用JS脚本处理网页滚动条

    内容来自:https://www.cnblogs.com/yoyoketang/p/6128655.html JS相关知识:http://www.w3school.com.cn/js/index.as ...

  8. Selenium3+python自动化010-UnitTest框架简介和单元测试框架使用

    一.UnitTest介绍 unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过, ...

  9. Selenium3+python自动化006-环境搭建

    一.selenium简介 1.Selenium历史 (1)Selenium 1.0: Selenium IDE      Selenium Grid    Selenium RC(核心功能) Sele ...

随机推荐

  1. author模块

    一.auth模块简介 1.什么是auth模块,auth模块主要是解决什么问题 还是那句话,‘没有无缘无故的爱,也没有无缘无故的恨   凡是必有因’, 像我们开发一个网站,不可避免的设计网络用户系统,比 ...

  2. 【原创】关于pyinstaller打包的程序执行出错问题,pyinstaller3.5只支持matplotlib3.0.2已经解决

    之前,在用pyinstaller打包一个python程序时没有问题,后来不知道什么原因,再打包时出现了所谓的pyinstaller打包报错: RecursionError: maximum recur ...

  3. idea 普通项目 改成 maven项目

    首先 pom.xml 是必要的 然后在该文件上右击 add as maven project

  4. 【第三篇】C#调用lua文件

    获取一个全局基本数据类型 使用LuaEnv.Global.Get<T>("name")就可以 var str = luaEnv.Global.Get<string ...

  5. 页面上icon较多,又不想使用臃肿的结构怎么办?

    [先看效果图] 例如这种排版,常规有两种情况 1.把[“ & ”]+ 白色背景切一起 2.写结构的时候复杂,例如:div>img*2 +文字标签 读到这里,可能有人说,第一种情况为什么两 ...

  6. EasyUI笔记(二)Layout布局

    本系列只列出一些常用的属性.事件或方法,具体完整知识请查看API文档 Panel(面板)   1. 通过标签创建面板 <div id="p" class="easy ...

  7. beego的请求数据处理

    我们经常需要获取用户传递的数据,包括 Get.POST 等方式的请求,beego 里面会自动解析这些数据,你可以通过如下方式获取数据: GetString(key string) string Get ...

  8. vim 配置 jedi-vim( ubuntu:15.10 )

    确保 vim 支持 python3 或者 python 如果你已经安装了 vim, 可以通过vim --version, 在输出中找到 +python3 或者 +python 字样的话, 就可以跳过该 ...

  9. appium 爬取微信的相册内容(不知什么时候能写完)

    # crowl wechat through appium from appium import webdriver from selenium.webdriver.support.ui import ...

  10. 如果在vscode 中用运行快捷键(Ctrl+Alt+N)出现中文的乱码

    在VSCODE中,运行代码的快捷方式是Ctrl+Alt+N,终止 代码运行的方式是Ctrl+Alt+M,但是有时候会出现汉字的乱码,这种情况并不是代码有问题,只要在terminal 中运行代码就可以了 ...