如何查看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. 《TCP/IP具体解释卷2:实现》笔记--4种不同类型的mbuf

    mbuf的主要用途是保存子进程和网络接口间互相传递的用户数据.但mbuf也用于保存其它各种数据:源于目的地址.插口 选项等等. 以下介绍我们要遇到的四种类型的mbuf,它们根据在成员m_flag中填写 ...

  2. ThinkPHP整合百度Ueditor图文教程

    ThinkPHP整合百度Ueditor图文教程 ThinkPHP整合百度Ueditor,基于黄永成老师的视频说明的申明:最好大家都能写绝对路径的都写好绝对路径比如:window.UEDITOR_HOM ...

  3. [Firmware Warn]: GHES: Failed to read error status block address for hardware error source

    Firmware Warn 问题描述: 系统版本:Ubuntu 12.04 LTS. 系统启动后dmesg打印大量Firmware Warn告警信息到syslog文件中.信息如下: [Firmware ...

  4. 写一个简易web服务器、ASP.NET核心知识(4)--转载

    第一次尝试(V1.0) 1.理论支持 这里主要要说的关于Socket方面的.主要是一个例子,关于Socket如何建立服务端程序的简单的代码. static void Main(string[] arg ...

  5. HTML5-常见的事件- DOMContentLoaded事件

    一般我们监听文档是否加载完成是使用 window的load事件,该事件会在页面中的一切加载完毕时触发,但这个过程可能会因为要加载的外部资源过多而等待时间过长. DOMContentLoaded事件:则 ...

  6. 多个Activity和Intent(转)

    根据www.mars-droid.com:Andriod开发视频教学,先跳过书本<Beginning Android 2>的几个章,我是这两个资源一起看,需要进行一下同步.先初步了解一下应 ...

  7. 安装SQL2008时遇到"未能加载文件或"file:///d:microsoft..sql.chainer.packagedata.dll"或它的某个依赖项

    安装SQL2008时遇到"未能加载文件或"file:///d:microsoft..sql.chainer.packagedata.dll"或它的某个依赖项,如下图所示 ...

  8. java学会需要掌握的知识(来源网上。。)

    Java就业指导 2016-03-22 骆昊 程序人生 点击上方"程序人生"关注我们 想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些 ...

  9. yii2 打印sql语句

    echo $temp_chat_query->createCommand()->getRawSql();

  10. 序列化layer创建的弹出表单并ajax提交

    /** *createTime:2015-09-13 *updateTime:2015-09-13 *author:刘俊 *phone:13469119119 *QQ:418873053 **/ va ...