Python控制Firefox方法总结

yipeiwu_com6年前Python基础

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

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

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

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

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

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

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

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

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

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

相关文章

python 动态获取当前运行的类名和函数名的方法

一、使用内置方法和修饰器方法获取类名、函数名 python中获取函数名的情况分为内部、外部,从外部的情况好获取,使用指向函数的对象,然后用__name__属性复制代码 代码如下:def...

python thrift搭建服务端和客户端测试程序

本文生动简洁介绍了如何通过python搭建一个服务端和客户端的简单测试程序。 一、简介 thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码...

跟老齐学Python之dict()的操作方法

dict的很多方法跟list有类似的地方,下面一一道来,并且会跟list做一个对比 嵌套 嵌套在list中也存在,就是元素是list,在dict中,也有类似的样式: >>...

python非递归全排列实现方法

刚刚开始学习python,当前看到了函数这一节。结合数组操作,写了个非递归的全排列生成。原理是插入法,也就是在一个有n个元素的已有排列中,后加入的元素,依次在前,中,后的每一个位置插入,...

Python自动重试HTTP连接装饰器

有时候我们要去别的接口取数据,可能因为网络原因偶尔失败,为了能自动重试,写了这么一个装饰器。 这个是python2.7x 的版本,python3.x可以用 nonlocal 来重写。...