前言 go_to在当前的Web浏览器窗口中打开指定的URL 入参介绍 url def go_to(url): """ :param url: URL to open. :type url: str Opens the specified URL in the current web browser window. For instance:: go_to("google.com") """ _get_api_impl().go…
<script type="text/javascript">window.document.write("这个网页文件来自:".bold());window.document.write(window.location.toString());</script>…
意思就是说,初次加载时如果没有加载document.write,那么再次加载的时候回覆盖掉原来的内容,只显示新加载的内容. <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> </head> <body> <p> JavaScript 能够直接写入 HTML 输出流中: </p> <script> document.write…
前言 Helium 是一款 Web 端自动化开源框架,全称是:Selenium-Python-Helium,从名字上就可以看出,Helium 似乎和 Selenium 息息相关,基于Selenium的更轻量级的浏览器自动化. 确实,Helium 针对 Selenium 进行了封装,它屏蔽了 Selenium 很多实现细节,提供了更加简洁直观的 API,更方便我们进行 Web 端的自动化 官方表示,要实现同样的功能,Helium 相比 Selenium 要少 30% - 50% 的代码 目前,He…
学习思路: 查看github项目的源码,每个方法都有介绍及使用说明 https://github.com/mherrmann/selenium-python-helium/blob/master/helium/__init__.py __all__ = [   # Actions: 方法   'attach_file', 'click', 'doubleclick', 'drag', 'drag_file', 'find_all',   'get_driver', 'go_to', 'highl…
前言 helium库是自带chromedriver的,我们怎么来查看在哪里呢? 目录介绍 用我的电脑上的路径打比方如下: D:\Program Files (x86)\Python38\Lib\site-packages\helium\_impl\webdrivers 如下图:会有3个文件夹,每个文件夹下是对应操作系统的webdriver 调用逻辑 使用pycharm等IDE运行都会使用helium自带的webdriver 但是有一种特殊情况,就是helium的py文件打包成exe以后,实际调用…
曾几何时,当你码神附体,一路披荆斩棘的完成代码后,带着“一码在手,天下我有”的傲然环顾之时,却发现单元测试.API文档.Demo实例陆续向你砸来,顿时有木有一种冰水挑战后的感觉.而这时你应该:哟哟,快使用SmartDoc: SmartDoc, 一个基于NodeJS的自动化文档生成工具,她拥有明眸的双眼(yuidoc引擎),华丽的外衣(bootstrap 3风格),灵巧的双手(demo生成,codemirror代码编辑,jasmine接口兼容);拥有她,相信你一定会仰天长啸:"小伙伴们再也不用担心…
iText简介 iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML.Html文件转化为PDF文件. iText的安装非常方便,下载iText.jar文件后,只需要在系统的CLASSPATH中加入iText.jar的路径,在程序中就可以使用iText类库了.   1.包的引用 import java.io.FileNotFoundException; import java.io.…
刚刚接触JS,看到这句话时一时没搞懂,想了终于有了一些眉目,意思就是在文档加载过后,如果我们用比方说按钮的方式重新加载文档,就会把文档都覆盖: 列如: <!DOCTYPE html> <html> <body> <h1>My First Web Page</h1> <p>My First Paragraph.</p> <button onclick="myFunction()">点击这里&l…
浏览器模式与文档模式概念是怎么来的? 1.浏览器模式与文档模式概念起源 为了解决兼容性的问题,在IE浏览器(IE8, IE9, IE10)中,引入了浏览器模式和文档模式两个概念,浏览网页时可以通过按F12键看到这两种模式. 2.浏览器模式的主要作用是为兼容较早版本的IE,它会控制浏览器发出的UserAgent,表示以哪个版本的浏览器发出请求,以此来允许为某个特定IE版本设计的代码正确执行(举例来说:有些代码真是判断ie版本的,还有css里也有判断ie版本的). 3.文档模式的主要作用是影响浏览器…
公司有个需求,需要将word转成pdf并且抽取首页用以展示,word文档有需要兼容.doc和.docx两种文档格式.其中.docx通过poi直接就可以将word转成pdf,.doc则无法这样实现,上网查询很多资料,大概思路是正确的,既将.doc文档转成html,再将html转成pdf,具体实现的时候,却发现很多方法都不完善,要么转换的html标签不闭合,无法转pdf,要么是转pdf时中文不显示,在下将方法汇总之后,整理出一套亲测可用的代码,现附上,如下: maven依赖: <!-- word转h…
转自:http://kangrui.iteye.com/blog/2262860 众所周知_source字段存储的是索引的原始内容,那store属性的设置是为何呢?es为什么要把store的默认取值设置为no?设置为yes是否是重复的存储呢? 我们将一个field的值写入es中,要么是想在这个field上执行search操作(不知道具体的id),要么执行retrieve操作(根据id来检索).但是,如果不显式的将该field的store属性设置为yes,同时_source字段enabled的情况…
前言 前面说过helium是对Selenium 进行了封装,那么我们如何使用selenium的方法呢,通过下面的介绍,我们能够清楚在helium中能够使用selenium的任何方法 入参介绍 def get_driver(): """ Returns the Selenium WebDriver currently used by Helium to execute all commands. Each Helium command such as ``click("…
前言 hover 实现功能是将鼠标光标悬停在给定的元素或点上 入参介绍 element def hover(element): """ :param element: The element or point to hover. :type element: str, unicode, :py:class:`HTMLElement`, \ :py:class:`selenium.webdriver.remote.webelement.WebElement` or :py:cl…
前言 attach_file关键字根据官方介绍的作用是上传文件 入参介绍 def attach_file(file_path, to=None): """ :param file_path: The path of the file to be attached. :param to: The file input element to which the file should be attached. Allows attaching a file to a file i…
前言 Text关键字的作用是识别网页上的文字,在一般UI查找中使用率非常高,但是需要注意,如果网页上有相同的文字,那么只能识别到第一个 入参介绍 以下是Text的源码 有5个如参:后面4个参数是上下左右的定位辅助,后面举例中详细介绍 text=None, below=None, to_right_of=None, above=None, to_left_of=Noneclass Text(HTMLElement):    """    Lets you identify an…
前言 find_all关键字根据官方介绍的作用是查找所有出现GUI元素,并且返回list,下面通过举例说明 入参介绍 def find_all(predicate): """ Lets you find all occurrences of the given GUI element predicate. For instance, the following statement returns a list of all buttons with label "O…
前言 wait_until等待某个条件为真才继续往下执行.默认的超时时间为10s,每0.5查询一次,这俩参数选填.可以设置超时时间和轮询间隔. 可以作为添加后校验元素是否存在的场景 入参介绍 def wait_until(condition_fn, timeout_secs=10, interval_secs=0.5): """ :param condition_fn: A function taking no arguments that represents the \…
前言 highlight方法是通过红框高亮显示元素,在调试中有很大优势,可以清楚看到定位的元素位置 入参介绍 def highlight(element):   """  入参:元素 :param element: The element to highlight.   Highlights the given element on the webpage by drawing a red rectangle   around it. This is useful for d…
前言 press方法是用来模拟键盘按键输入,可以组合使用,来模拟键盘输入,解决一些难定位的元素 入参介绍 以下是press源码中的函数介绍 def press(key):  :入参 :param key: Key or combination of keys to be pressed.   Presses the given key or key combination. To press a normal letter key such   as 'a' simply call `press…
前言 write方法是模拟在输入框中写入数据 write入参说明 def write(text, into=None):   """   :param text: The text to be written.   :type text: one of str, unicode   :param into: The element to write into.   :type into: one of str, unicode, :py:class:`HTMLElement`…
前言 click点击方法在web UI自动化中使用频率非常高,此方法就是模拟鼠标左键单击动作 click入参说明 1.首先我们来分析一下click方法的代码 click(element):   """  :参数 元素:元素或坐标 :param element: The element or point to click.   :type element: str, unicode, :py:class:`HTMLElement`, \   :py:class:`seleniu…
前言 S方法可以灵活定位元素特别注意,比如to_left_of参数的使用是查找在某个元素左侧的元素,但是默认只会找第一个S方法可以灵活运用,特别是没有id,没有name,只有classname的情况,可以多次使用方向的判断,比如:<li class="nav_com_li  "><a class="current" href="/nav/watchers" target="">动态</a>&…
目录 开始 Registering components 控制范围和生命周期 用模块结构化Autofac xml配置 与.net集成 深入理解Autofac 指导 关于 词汇表 Resolve的参数 当注册或者检索component的时候可以使用参数 传递参数给Resolve Resolve接受可变长度的参数列表 ? 1 var fred = Resolve<Person>(new NamedParameter("name", "Fred")); 如果是…
一.安装Eclipse Java Web Developer Tools插件 1.eclipse菜单:help/install New Software,打开Available Software窗体: 2.Available Software窗体:Work with下拉框中选择mars - http://download.eclipse.org/releases/mars项,mars是eclipse版本,可能有所不同: 3.待Pending...完成后,会显示可选装的插件列表,如果不勾选Cont…
  这一章的例子是对<Qt Creator快速人门>基础应用篇各章节知识的综合应用, 也是一个规范的实例程序.之所以说其规范,是因为在这个程序中,我们对菜单什么时候可用/什么时候不可用.关闭程序时应该先保存已修改且尚未保存的文件等细节都做了严格的约束.而一个真正实用的应用程序,也就应该如此.   本章应用了基础篇的众多知识点,但这里只是讲解程序流程与框架,没有涉及太多知识细节的讲解.这个实例主要是对主窗口部件的应用,所以可以学完<Qt Creator快速入门>的前5章再来学习本章,…
使用微软提供的Office Online平台只需要一个网址即可在线查看Xls,doc,PPT等文档 http://view.officeapps.live.com/op/view.aspx?src=要查看的文档地址   在线编辑需要登录live.com并从onedrive中打开或新建文档也可以来自在线模板(下面的Excel来自Excel Online模板,编辑后的文件会保存到你的onedrive中) 在线编辑Xls文档(部分功能不支持,但已经够用) 在线编辑word文档(部分功能不支持,但已经够…
im4java下载地址:http://sourceforge.net/projects/im4java/files/(谷歌搜索出来的第一个官方地址打不开) 我们需要下载bin和src 这2个压缩包. 个人学习文档流程: ①.在bin解压后doc目录中打开Index.html可以查看一些介绍信息,开发重点可以看documentation和API. 其中API没有正确链接,可以再刚才的目录下找到API文件下,那里去查看API文档. ②.documentation学习过程中,可以配合官方提供的test…
前文简略讲述了如何获取浏览器窗口的位置和大小,此文讲述如何通过 webdriver 设置浏览器窗口的位置和大小. 直接上码了...... /** * Set browser size for expected setting * * @author Aaron.ffp * @version V1.0.0: autoSeleniumDemo main.aaron.sele.core SeleniumCore.java setBrowserSize, 2015-7-28 01:18:19 Exp $…
一.现状 Vue框架在前端开发中应用广泛,当一个多人开发的Vue项目经过长期维护之后往往会沉淀出很多的公共组件,这个时候经常会出现一个人 开发了一个组件而其他维护者或新接手的人却不知道这个组件是做什么的.该怎么用,还必须得再去翻看源码,或者压根就没注意到这个组件 的存在导致重复开发.这个时候就非常需要维护对应的组件文档来保障不同开发者之间良好的协作关系了. 但是传统的手动维护文档又会带来新问题: 效率低,写文档是个费时费力的体力活,好不容易抽时间把组件开发完了回头还要写文档,想想都头大. 易出错…