Python利用splinter实现浏览器自动化操作方法

利用Splinter开发浏览器自动化操作,编写代码比较简单。

案例一:

from splinter import Browser 

with Browser() as browser:
 # Visit URL
 url = "http://www.google.com"
 browser.visit(url)
 browser.fill('q', 'splinter - python acceptance testing for web applications')
 # Find and click the 'search' button
 button = browser.find_by_name('btnG')
 # Interact with elements
 button.click()
 if browser.is_text_present('splinter.readthedocs.io'):
  print("Yes, the official website was found!")
 else:
  print("No, it wasn't found... We need to improve our SEO techniques") 

第1行 是导入Browser。

Browser是整个测试的基础,你可以把它理解为一个浏览器。

第3行 初始化一个Browser,不加参数的话默认是firefox。

第4行 是命令browser打开"http://google.com"。

第5行 是命令browser使用‘splinter - python acceptance testing for web applications'填充页面中‘name'是‘q'的元素。在Google的首页中,就是那个搜索框。大家可以看一下Google首页的代码。

第6行 是两个命令。第一个是找到‘name'属性为‘btnG'的按钮,第二个是click()也就是点击这个按钮。这个按钮就是Google的搜索按钮。

第8行 是判断页面中是否有‘splinter.cobrateam.info'这个字符串,因为上一步点击了搜索按钮,所以这里搜索的就是跳转之后的页面。当然,大家不用担心网速慢会判断出错,splinter会等页面载入完成再进行下一步的操作。

第13行 是删除browser。

案例二:

这里,我给出自动登录126邮箱的案例。难点是要找到页面的账户、密码、登录的页面元素,这里需要查看126邮箱登录页面的源码,才能找到相关控件的id.

例如:输入密码,密码的文本控件id是pwdInput.可以使用browser.find_by_id()方法定位到密码的文本框,

接着使用fill()方法,填写密码。至于模拟点击按钮,也是要先找到按钮控件的id,然后使用click()方法。

由于代码较简单,我就只在代码中给出注解说明工作原理。

#coding=utf-8
import time
from splinter import Browser 

def splinter(url):
 browser = Browser('chrome')
 #login 126 email websize
 browser.visit(url)
 #wait web element loading
 time.sleep(5)
 #fill in account and password
 browser.find_by_id('idInput').fill('xxxxxx')
 browser.find_by_id('pwdInput').fill('xxxxx')
 #click the button of login
 browser.find_by_id('loginBtn').click()
 time.sleep(8)
 #close the window of brower
 browser.quit() 

if __name__ == '__main__':
 websize3 ='http://www.126.com'
 splinter(websize3) 

以上这篇Python利用splinter实现浏览器自动化操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python自动化测试工具Splinter简介和使用实例

    Splinter 快速介绍 官方网站:http://splinter.cobrateam.info/ 官方介绍: Splinter is an open source tool for testingweb applications using Python. It lets you automate browser actions, such asvisiting URLs and interacting with their items 特性:1.可以模拟浏览器行为,访问指定的URL,并且可

  • Python利用splinter实现浏览器自动化操作方法

    利用Splinter开发浏览器自动化操作,编写代码比较简单. 案例一: from splinter import Browser with Browser() as browser: # Visit URL url = "http://www.google.com" browser.visit(url) browser.fill('q', 'splinter - python acceptance testing for web applications') # Find and cl

  • C# 利用Selenium实现浏览器自动化操作的示例代码

    概述 Selenium是一款免费的分布式的自动化测试工具,支持多种开发语言,无论是C. java.ruby.python.或是C# ,你都可以通过selenium完成自动化测试.本文以一个简单的小例子,简述C# 利用Selenium进行浏览器的模拟操作,仅供学习分享使用,如有不足之处,还请指正. 涉及知识点 要实现本例的功能,除了要掌握Html ,JavaScript,CSS等基础知识,还涉及以下知识点: log4net:主要用于日志的记录和存储,本例采用log4net进行日志记录,便于过程跟踪

  • python利用selenium进行浏览器爬虫

    前言 相信大家刚开始在做爬虫的时候,是不是requests和sound这两个库来使用,这样确实有助于我们学习爬虫的知识点,下面来介绍一个算事较复杂的爬虫案例selenium进形打开浏览器爬取网站的信息 导入第三方库 自执行函数 解析信息 保存文件信息 打开浏览器 获取链接信息 执行函数 运行结果 总结 以上所述是小编给大家介绍的python利用selenium进行浏览器爬虫,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对我们网站的支持! 如果你觉得本

  • python 利用PyAutoGUI快速构建自动化操作脚本

    一.背景 大家好,我是安果! 我们经常遇到需要进行大量重复操作的时候,比如:网页上填表,对 web 版本 OA 进行操作,自动化测试或者给新系统首次添加数据等 这些操作的特点往往是:数据同构,大多是已经有了的结构化数据:操作比较呆板,都是同一个流程的点击.输入:数据量大,极大消耗操作人精力 那么能不能自动化呢? 二.自动化的方案 如果你在 web 上进行操作, Python 的 Selenium 可以满足要求.如果需要对 GUI 界面进行操作,你恐怕得试验下"按键精灵"能不能满足要求.

  • python利用Excel读取和存储测试数据完成接口自动化教程

    http_request2.py用于发起http请求 #读取多条测试用例 #1.导入requests模块 import requests #从 class_12_19.do_excel1导入read_data函数 from do_excel2 import read_data from do_excel2 import write_data from do_excel2 import count_case #定义http请求函数 COOKIE=None def http_request2(met

  • python 利用浏览器 Cookie 模拟登录的用户访问知乎的方法

    首先在火狐浏览器上登录知乎,然后使用火狐浏览器插件 Httpfox 获取 GET 请求的Cookie,这里注意使用状态值为 200(获取成功)的某次GET. 将 Cookies 复制出来,注意这一行非常长,不要人为添加换行符.而且 Cookie 中使用了双引号,最后复制到代码里使用单引号包起来. 使用下边代码检验是否是模拟了登录的用户的请求: import requests import re headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT

  • python利用appium实现手机APP自动化的示例

    写这个东西也是自己喜欢研究些自动化的东西,以下全是自己的经验所得,由于开源的软件对于各版本以及操作系统要求很高,会经常碰到一些不兼容的问题,这个都属于正常的,换版本就对了. 如果你感觉学不会?莫慌,小编推荐大家加入群, 前面548中间377后面875,群里有志同道合的小伙伴, 互帮互助,还可以拿到许多视频教程! 本人的环境搭建都是在win10 64位上搭建的 1.环境准备 1.jdk1.8.0 (64位) 2.android-sdk_r24.4.1-windows 3.python:2.7(3.

  • 利用Python+PyQt5实现简易浏览器的实战记录

    目录 实验环境 依赖项安装 编程实现 浏览器有一个可以用于展示网页的窗口 代码 总结 实验环境 操作系统:Linux Mint 编辑器:vim 编程语言:python3 依赖项安装 安装PyQt5 Qt是一个跨平台的C++应用程序开发框架 sudo apt-get install python3-pyqt5 安装完成后进入python命令行界面测试是否安装正确 python3 >>>import PyQt5 执行命令后如果没有任何提示,说明安装成功 编程实现 Qt为开发者提供了QtWeb

  • Python利用Selenium实现网站自动签到功能

    目录 什么是Selenium 前情提要 准备工作 代码及讲解 点击登录 点击跳过弹窗 小结 什么是Selenium 先带领大家学习下Selenium的基本概念吧. Selenium主要用于web应用程序的自动化测试,但并不局限于此,它还支持所有基于web的管理任务自动化. 它的特点如下: 开源,免费 多浏览器支持:Firefox.Chrome.IE等 多平台支持:Linux.Windows.Mac 多语言支持:Java.Python.Ruby.C#.JavaScript.C++ 对web页面有良

  • Python利用PyAutoGUI实现自动点赞

    目录 前言 思路 实现 总结 前言 在上篇文章<Python自动操作 GUI 神器——PyAutoGUI>中,我跟大家讲解了一下 pyautogui 的一些基础知识和操作,大家反馈很好,给了我好多赞,在此先跟大家说声三克油! 在得到大家正反馈的同时,我受到了很大鼓舞,感觉如果只是介绍一下基础操作,有点不过瘾,所以今天晚上加班回来,虽然很不想打开电脑,但是还是忍着疲惫给大家奉献一个小实例. 为此,我跑去洗手间用凉水洗了一把脸,顿时清醒多了,下面进入正题. 作为一个 GUI 操作的神器,我们看到了

随机推荐