Python控制Firefox方法总结


Posted in Python onJune 03, 2019

有时候为了自动化测试网页,我们往往希望能够使用一些脚本语言控制浏览器. 通过脚本模拟一些浏览器动作,然后测试得到的结果.这里, 我们讲解一下如何使用Python语言控制Firefox浏览器.

使用 -marionette 参数启动 Firefox. 比较简单的一种做法就是右键单击Firefox的桌面图标, 然后选择属性, 最后在命令一栏最后添加 <空格> -marionette.

Python控制Firefox方法总结

为 Python 安装 marionette_client 库. 命令为: pip install marionette_client如果有必要, 可以使用virtualenv隔离环境.为 Python 安装 marionette_client 库. 命令为: pip install marionette_client如果有必要, 可以使用virtualenv隔离环境.

用Python连接Firefox. 你可以使用交互命令行, 或者是写在py文件里.

首先导入刚刚安装的库: from marionette import Marionette

然后使用下图中的代码连接 Firefox

Python控制Firefox方法总结

控制Firefox浏览网页使用如下代码.

Python控制Firefox方法总结

获取页面中的DOM节点, 使用 find_element 或 find_elements 方法

Python控制Firefox方法总结

得到的DOM元素上有一些方法可以操作这个DOM元素, 比如click().

Python控制Firefox方法总结

marionette 对Firefox的控制相当全面, 你几乎可以做任何你想做的事, 丝毫不逊色于页面中的 javascript. 你可以查看API文档来了解更高级的使用.

Python控制Firefox方法总结

Python 相关文章推荐
python 快速排序代码
Nov 23 Python
Python中给List添加元素的4种方法分享
Nov 28 Python
python中base64加密解密方法实例分析
May 16 Python
Python编写电话薄实现增删改查功能
May 07 Python
Python中多线程的创建及基本调用方法
Jul 08 Python
python获取指定时间差的时间实例详解
Apr 11 Python
解决Django模板无法使用perms变量问题的方法
Sep 10 Python
python dataframe 输出结果整行显示的方法
Jun 14 Python
python traceback捕获并打印异常的方法
Aug 31 Python
python 中的[:-1]和[::-1]的具体使用
Feb 13 Python
python3让print输出不换行的方法
Aug 24 Python
python批量检查两个对应的txt文件的行数是否一致的实例代码
Oct 31 Python
python+webdriver自动化环境搭建步骤详解
Jun 03 #Python
selenium+python自动化测试环境搭建步骤
Jun 03 #Python
python+selenium实现自动化百度搜索关键词
Jun 03 #Python
用Q-learning算法实现自动走迷宫机器人的方法示例
Jun 03 #Python
Python多进程方式抓取基金网站内容的方法分析
Jun 03 #Python
Python多进程入门、分布式进程数据共享实例详解
Jun 03 #Python
Python3实现定时任务的四种方式
Jun 03 #Python
You might like
用来解析.htgroup文件的PHP类
2012/09/05 PHP
php短址转换实现方法
2015/02/25 PHP
PHP实现根据数组某个键值大小进行排序的方法
2018/03/13 PHP
php PDO属性设置与操作方法分析
2018/12/27 PHP
php数值计算num类简单操作示例
2020/05/15 PHP
JQuery Ajax 跨域访问的解决方案
2010/03/12 Javascript
新手常遇到的一些jquery问题整理
2010/08/16 Javascript
jquery获取div距离窗口和父级dv的距离示例
2013/10/10 Javascript
iframe窗口高度自适应的实现方法
2014/01/08 Javascript
Jquery获取元素的父容器对象示例代码
2014/02/10 Javascript
JavaScript对象的property属性详解
2014/04/01 Javascript
JavaScript中的Math 使用介绍
2014/04/21 Javascript
jQuery中:submit选择器用法实例
2015/01/03 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
js实现简单的选项卡效果
2017/02/23 Javascript
vue项目中在可编辑div光标位置插入内容的实现代码
2020/01/07 Javascript
vue项目中使用eslint+prettier规范与检查代码的方法
2020/01/16 Javascript
解决vue 退出动画无效的问题
2020/08/09 Javascript
pygame学习笔记(3):运动速率、时间、事件、文字
2015/04/15 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
2016/06/23 Python
Python tkinter事件高级用法实例
2018/01/31 Python
python如何生成各种随机分布图
2018/08/27 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
2020/04/12 Python
解决jupyter运行pyqt代码内核重启的问题
2020/04/16 Python
Python编写memcached启动脚本代码实例
2020/08/14 Python
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
意大利香水和彩妆护肤品购物网站:Ditano
2017/08/13 全球购物
英国可持续奢侈品包包品牌:Elvis & Kresse
2018/08/05 全球购物
Beach Bunny Swimwear官网:设计师泳装和性感比基尼
2019/03/13 全球购物
人力资源部培训专员岗位职责
2014/01/02 职场文书
竞聘演讲稿范文
2014/01/12 职场文书
霸气押韵的班级口号
2014/06/09 职场文书
生产助理岗位职责
2014/06/18 职场文书
建筑工程材料员岗位职责
2015/04/11 职场文书
如何使用Maxwell实时同步mysql数据
2021/04/08 MySQL
看看如何用Python绘制小米新版天价logo
2021/04/20 Python