例1.

#coding=utf-

from selenium import webdriver
import os,time chromedriver = "C:\Users\AppData\Local\Google\Chrome\chromedriver.exe"
'''
environ是一个字符串所对应环境的映像对象;
os.environ.keys() 主目录下所有的key
os.environ 显示key+内容。 windows:
· os.environ['HOMEPATH']:当前用户主目录。
os.environ['TEMP']:临时目录路径。
os.environ[PATHEXT']:可执行文件。
os.environ['SYSTEMROOT']:系统主目录。
os.environ['LOGONSERVER']:机器名。
os.environ['PROMPT']:设置提示符。
linux:
os.environ['USER']:当前使用用户。
os.environ['LC_COLLATE']:路径扩展的结果排序时的字母顺序。
os.environ['SHELL']:使用shell的类型。
os.environ['LAN']:使用的语言。
os.environ['SSH_AUTH_SOCK']:ssh的执行路径。
''' os.environ["webdriver.chrome.driver"] = chromedriver driver = webdriver.Chrome(chromedriver) driver.get("http://baidu.com")
time.sleep(3)
print (u'窗口最大化')
driver.maximize_window()
a=driver.title print a
time.sleep(1)
driver.find_element_by_id('kw').send_keys('selenium') driver.find_element_by_id('su').click() driver.quit()

例2.

#coding=utf-
from selenium import webdriver
import os,time,unittest
import log
import logging
import traceback
logger = log.Logger('e:/1/web_log.log',clevel = logging.DEBUG,Flevel = logging.INFO)
def f(n):
logger.info(n)
print n class baidu(unittest.TestCase):
def setUp(self): self.chromedriver='C:\Users\li.liu\AppData\Local\Google\Chrome\chromedriver.exe'
os.environ['webdriver.chrome.driver']=self.chromedriver
self.driver=webdriver.Chrome(self.chromedriver)
print u'驱动定义完成'
def test_baidu_search(self):
u"""百度搜索""" driver = self.driver
f(u'打开百度')
driver.maximize_window()
driver.get('http://baidu.com')
time.sleep()
print u'打开另一个网址'
driver.get('http://news.baidu.com')
print u'窗口最大化'
driver.maximize_window()
time.sleep()
print u'返回上一个网页'
driver.back()
time.sleep()
driver.forward()
time.sleep()
driver.back()
time.sleep()
driver.close()
driver.quit() def test_baidu_set(self):
driver = self.driver
driver.get('http://baidu.com')
time.sleep()
driver.find_element_by_id('kw').send_keys(u'测试')
driver.find_element_by_id('su').click()
time.sleep()
driver.find_element_by_id('kw1').clear()
driver.find_element_by_id('kw').send_keys(u'测试用例')
time.sleep()
print u'关闭浏览器'
driver.close()
print u'退出浏览器服务'
driver.quit() if __name__=="__main__": unittest.main()

a浏览器开发者模式

FireFox——>Firebug前端工具,而对于Chrome浏览器——>右键选择‘审查元素’或者快捷键 F12 ,即可看到一些开发写的code,这对于获取测试对象(测试控件)的某些属性很有帮助。

b浏览器基本操作

浏览器窗口的最大化以及大小设置,以及前进,后退
这里有几点注意:
XXXX.get(URL)转到URL地址
time.sleep(ns) 等待时间
XXXX.back( ) 返回到上一个浏览器
XXXX.forward() 前进到下一个浏览器
XXXX.set_window_size(width,height) width,height 我们可以自己根据需要设置。
XXXX.maximize() 窗口最大化
XXXX.title 得到浏览器的标题
XXXX.quit( ) 浏览器退出
XXXX.close( ) 浏览器关闭

import time —>保证脚本运行的稳定性
browser=webdriver.Chrome() —>调用Chrome浏览器
使用print()语句可以查看脚本是否运行正确

python+selenium+chrome初级自动化操作的更多相关文章

  1. python selenium chrome 实现自动化登录

    1.环境安装 selenium的开发文档网址(英语好的可以直接看这个,写的很详细):http://selenium-python.readthedocs.io/ 因为实现的时候使用的是谷歌浏览器,在运 ...

  2. 【Selenium01篇】python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作!

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 二.话不多说,直接开干,开始搭建自动化测试环境 这里以前在 ...

  3. 【Selenium02篇】python+selenium实现Web自动化:鼠标操作和键盘操作!

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第二篇博 ...

  4. 【Selenium04篇】python+selenium实现Web自动化:文件上传,Cookie操作,调用 JavaScript,窗口截图

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第四篇博 ...

  5. python+selenium+Chrome options参数

    python+selenium+Chrome options参数 Chrome Options常用的行为一般有以下几种: 禁止图片和视频的加载:提升网页加载速度. 添加代理:用于翻墙访问某些页面,或者 ...

  6. 【Selenium05篇】python+selenium实现Web自动化:读取ini配置文件,元素封装,代码封装,异常处理,兼容多浏览器执行

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第五篇博 ...

  7. 【Selenium03篇】python+selenium实现Web自动化:元素三类等待,多窗口切换,警告框处理,下拉框选择

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第三篇博 ...

  8. 【Selenium07篇】python+selenium实现Web自动化:PO模型,PageObject模式!

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第七篇博 ...

  9. Docker环境下运行python+selenium+chrome

    Docker环境下运行python+selenium+chrome docker运行时占用的资源非常少,而且能将环境进行有效的隔离,可以快速的进行部署,因此可以将docker与selenium结合实现 ...

随机推荐

  1. 【编程开发】x86,I386,i686, x86_64, x64,amd64、Windows Linux AIX下查看CPU位数和操作系统位数、rpm包名

    a2ps-4.13b-57.2.el5.i386.rpm 每一个rpm包的名称都由"-"和"."分成了若干部分.就拿 a2ps-4.13b-57.2.el5.i ...

  2. Python3 列表list合并的4种方法

    方法1: 直接使用"+"号合并列表 aList = [1,2,3] bList = ['www', 'pythontab.com'] cList = aList + bList   ...

  3. python基础(二)-- 列表、字典、集合、字符串操作

    4.列表: 基本操作: 索引 切片 追加 删除 长度 切片 循环 包含 import copy i=0 #persons=['dailaoban','xiekeng',['age',100,50],' ...

  4. Centos7挂载新硬盘

    1.查看系统是否检测到新的硬盘设备 ls /dev/ |grep sd linux 中所有外设都会在这个目录下,对应一个文件,其中第一块硬盘是sda,第二块硬盘是sdb,第三块硬盘是sdc.其中sda ...

  5. Windows中使用 Python 调用 Matlab 程序

    https://ww2.mathworks.cn/help/matlab/matlab_external/system-and-configuration-requirements.html http ...

  6. [转帖]Linux教程(11)- linux中的计划作业

    Linux教程(11)- linux中的计划作业 2018-08-21 17:13:36 钱婷婷 阅读数 160更多 分类专栏: Linux教程与操作 Linux教程与使用   版权声明:本文为博主原 ...

  7. springmvc数据的封装

    spring封装是进行orm封装,可以进行定义数据类型,数据名与接收名相同,进行接收,或者定义类,类的属性名与接收名相同 单个数据类型如图下: 对象类型封装: 其他:乱码处理 在中文字符乱码,需要规定 ...

  8. 关于WPF中的XAML

    XAML全称extensible application markup language(可扩展性标记语言) 可扩展应用程序标记语言(XAML)是一种声明性语言.概括来说,就是为应用程序构建UI.目前 ...

  9. 2.2_Database Interface:ODBC基本概念

    一.无ODBC时代 一般来讲不同的数据库厂商都有自己的数据库开发包,这些开发包支持两种模式的数据库开发; 1.预编译的嵌入模式(例如Oracle的ProC,SQL Server的ESQL) 2.API ...

  10. IdentityServer4使用OpenIdConnect实现单点登录

    接上一篇:IdentityServer4实现OAuth2.0四种模式之授权码模式 前面写的四种OAuth2.0实现模式只涉及到IdentityServer4的OAuth2.0特性,并没有涉及到OenI ...