如何查看python selenium的API

python -m pydoc -p  4567

说明:

python -m pydoc表示打开pydoc模块,pydoc是查看python文档的首选工具;

-p 4567表示在4567端口上启动server

然后在浏览器中访问http://localhost:4567/,此时应该可以看到python中所有的Modules按ctrl+f,输入selenium,定位到selenium文档的链接,然后点击进入到http://localhost:4567/selenium.html这个页面

这就是selenium文档所在的位置了,接下来便可以根据自己的需要进行查看了。举个例子,如果你想查看Webdriver类的基本方法,可以访问这个页面http://localhost:4567/selenium.webdriver.remote.webdriver.html

Firefox浏览器调用

Firefox浏览器驱动添加

Firefox原生支持,无需下载驱动,只要安装浏览器即可

Firefox浏览器的调用

#coding=utf-8
from selenium import webdriver driver=webdriver.Firefox()
url='http://www.baidu.com'
driver.get(url)
driver.close()

说明:

1、【#coding=utf-8】为了防止乱码问题,以便在程序中添加中文注释,把编码统一为UTF-8,注意=两遍不要留空格,否则不起作用,另外【#_*_coding:utf-8_*_】的写法也可以达到相同的作用

2、【from selenium import webdriver】该步骤是导入selenium的webdriver包,只有导入selenium包,我们才能使用webdriver API进行自动化脚本的开发

3、【driver=webdriver.Firefox()】这里将控制webdriver的Firefox赋值给driver,通过driver获得浏览器操作对象,后就可以启动浏览器、打开网址、操作对应的页面元素了。

Firefox自动运行中需要启动固定插件

首先,根据上述的浏览器调用,webdriver在启动浏览器时,启动的一个干净的没有任务、插件及cookies信息的浏览器(即使你本机的firefox安装了某些插件,webdriver启动firefox也是没有这些插件的),但是有可能被测系统本身需要插件或者需要调试等等,此时脚本会卡主无法运行,那么该如何解决呢?在解答问题前,先了解下,如何自定义带有特定配置的Firefox。

自定义Firefox配置文件

步骤如下:

1.运行CMD,打开Firefox的 Profile manager

2.点击"Create Profile...",完成步骤,包括输入Profile名字

3.点击"Start Firefox"

4.在新启动的Firefox中安装自己所需要的Add-On或者做其他配置

附:java代码:

string sPath = @"C:\Users\xxxx\AppData\Roaming\Mozilla\Firefox\Profiles\5f3xae4a.default";  FirefoxProfile ffprofile = new FirefoxProfile(sPath);

方法一:使用自定义的Firefox profile

用webdriver驱动firefox浏览器时如果不设置参数,默认使用的Firefox的profile和平时打开浏览器使用的firefox不一样,如果要使用平常使用的配置,需要增加如下操作:

profile_dir="C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles\wrdjxgdk.default-1434681389856"
profile = webdriver.FirefoxProfile(profile_dir)
driver = webdriver.Firefox(profile)

增加上述配置后,再调用driver进行get操作即可,其中黄色背景部分为Firefox的prifiles文件目录,一般都在:C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles目录下,至于启动什么样的浏览器,可以根据自己的需要定义,如:

a. 浏览网站,必须安装的插件,都安装完毕,且设置为:总是激活

b. 必要的安全设置等

方法二:使用代码进行配置

该方法是直接在代码里面进行插件的安装和profile的配置,如下先举例firebug插件的调用:

profile=webdriver.FirefoxProfile()
#加载插件
profile.add_extension('c:\\firebug-2.0.8-fx.xpi')
#激活插件
profile.set_preference("extensions.firebug.allPagesActivation", "on")
driver=webdriver.Firefox(profile)

增加上述配置后,再调用driver进行get操作即可。

我们除了可以使用上面提到的方法定制插件,webdriver还可以对profile进行定制(在firefox地址栏中输入about:config,可以查看firefox的参数),下面举例设置代理和默认下载路径:

myweb="192.168.9.111"
myport="" profile=webdriver.FirefoxProfile()
#设置代理
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.http", myweb)
profile.set_preference("network.proxy.http_port", myport)
#设置文件下载目录
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.dir", "C:\\test")
driver=webdriver.Firefox(profile)

增加上述配置后,再调用driver进行get操作即可

参考资料

[1]Selenium2(WebDriver)总结(一)---启动浏览器、设置profile&加载插件,

http://www.cnblogs.com/puresoul/p/4251536.html

[2]Webdriver使用自定义Firefox Profile运行测试,

http://lijingshou.iteye.com/blog/2085276

[3]记录我遇到的selenium哪些令人摸不着头脑的问题,

http://blog.csdn.net/old_imp/article/details/11417999

Selenium+Python浏览器调用:Firefox的更多相关文章

  1. Selenium+python+shell+crontab+firefox

    最近在尝试一个自动打卡的脚本,发现了几个问题,特此记录一下. 环境: Ubuntu 12.04.4 LTS selenium 2.43.0 firefox 32.0.3 1 本来机器上selenium ...

  2. Selenium 设置浏览器下载 Firefox 和Chrome

    当我们在使用Selenium运行自动化测试时,偶尔需要用到下载功能,但浏览器的下载可能会弹出下载窗口,或者下载路径不是我们想要保存的位置,所以在通过Selenium启动浏览器时需要做相关的设置,将使这 ...

  3. selenium+python 浏览器标签页跳转 switch_to_window

    浏览器页面跳转方法记录: from selenium import webdriver import time browser = webdriver.Chrome() first_url='http ...

  4. selenium+python浏览器窗口的切换

    1.首先需要知道当前浏览器中有多少个活动的窗口 >>> br.window_handles[u'{075a54ee-3d10-4c76-b56d-b645259bbd54}', u' ...

  5. selenium+python启动Firefox浏览器失败问题和点击登陆按钮无效问题

    问题1:使用python+selenium编写脚本调用Firefox时报错:

  6. selenium python 一些操作和定位收集

    (—)滚动条操作 python中selenium操作下拉滚动条方法汇总 selenium_webdriver(python)控制浏览器滚动条 selenium+Python(select定位) Sel ...

  7. python+selenium浏览器调用(chrome、ie、firefox)

    代码: #coding=utf-8 from selenium import webdriver driver=webdriver.Chrome() #调用chrome浏览器 driver.get(' ...

  8. python+selenium环境配置及浏览器调用

    最近在学习python自动化,从项目角度和技术基础角度出发,我选择了python+selenium+appium的模式开始我的自动化测试之旅: 一.python安装 二.python IDE使用简介 ...

  9. Python+selenium测试环境成功搭建,简单控制浏览器(firefox)接下来,继续学习其他浏览器上的测试环境搭建;学习Python语言,利用Python语言来写测试用例。加油!!!

    Python+selenium测试环境成功搭建,简单控制浏览器(firefox)接下来,继续学习其他浏览器上的测试环境搭建:学习Python语言,利用Python语言来写测试用例.加油!!!

随机推荐

  1. pyqt labe界面超级链接例子学习

    def bz(self): self.lable1=QtGui.QLabel(u'<br><a href=http://windows.microsoft.com/zh-cn/win ...

  2. (转)Tomcat 7 访问 Manager 和 Host Manager

    配置好 Tomcat 7.0 后,在 tomcat-users.xml 中配置用户角色来访问 localhost:8080 的这样三个按钮总出现问题: Server Status Manager Ap ...

  3. 配置数据库连接池,Tomcat6.0 连接池的配置

    Tomcat6.0 连接池的配置1.本人当前使用的Tomcat版本为:6.0.20,oracle为稳定的9i版本 2.下文为方便起见,依习惯以%Tomcat_Home%表示Tomcat安装的目录,本人 ...

  4. go - 复合类型 array, slice, map

    Go 语言支持复合类型: 数组:array 切片:slice 指针:pointer 字典:map 通道:chan 结构体:struct 接口:interface 1. array   同一类型数据的集 ...

  5. [R语言画图]气泡图symbols

    绘制气泡图主要使用函数symbols(x,y,circle=r).当中x.y是坐标轴,r是每一个点的半径. x<-rnorm(10) y<-rnorm(10) r<-abs(rnor ...

  6. 关于Latch

    Latch是什么 Latch是SQL Server引擎保证内存中的结构的一致性的轻量同步机制.比如索引,数据页和内部结构(比如非叶级索引页).SQL Server使用Buffer Latch保护缓冲池 ...

  7. Servlet实现Session

    (1)首先看一下项目的结构 是在tomcat--webaps下的myWebSites项目 在myWebSites下有仅仅有WEB-INF目录 在WEB-INF目录中有  一下目录(在classes目录 ...

  8. SQLLoader2(导入EXCEL或csv格式的文件)

    一.EXCEL文件导入:1.首先将EXCEL文件另存为CSV格式文件--->用UltraEdit工具打开时可看到字段之间以逗号分隔. ,EMPNO,ENAME,JOB,MGR,HIREDATE, ...

  9. 第二章 Android Studio使用第三方模拟器

    1.为什么要使用第三方模拟器 Android Studio自带模拟器,相对Eclipse来说项目启动速度的确快了很多倍,提高了开发效率.但和第三方模拟器进行对比的话,还是第三方的模拟器运行速度更快些. ...

  10. webservice和.net remoting浅谈

    服务器端向客户端发送一个进程编号,一个程序域编号,以确定对象的位置.   webservice和.net remoting都是用来通信的框架,它们最大的优点是可以像调用本地对象一样调用远程对象,比如: ...