zoukankan      html  css  js  c++  java
  • 页面自动化

    因为可以操纵负载phantomjs和web页面,各个页面进行完善的自动化。

    DOM操作

    由于这个脚本可以被执行,就像它是运行在Web浏览器标准DOM脚本å’ŒCSS选择器很好的工作。

    下列所述useragent.js该实施例证明阅读textContent元素的属性原我信息分隔符myagent

    var page = require('webpage').create();
    console.log('The default user agent is ' + page.settings.userAgent);
    page.settings.userAgent = 'SpecialAgent';
    page.open('http://www.httpuseragent.org', function(status) {
      if (status !== 'success') {
        console.log('Unable to access network');
      } else {
        var ua = page.evaluate(function() {
          return document.getElementById('myagent').textContent;
        });
        console.log(ua);
      }
      phantom.exit();
    });

    上述例子还演示了一种方式来定制用户代理在远程Web服务器。

    使用jQuery和其他库

    作为1.6的版本,则还能够包括使用jQuerypage.includejs到页面如下:

    var page = require('webpage').create();
    page.open('http://www.sample.com', function() {
      page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function() {
        page.evaluate(function() {
          $("button").click();
        });
        phantom.exit()
      });
    });

    上面的片段会打开一个网页,包含了jQuery库的页面,然后单击所有的按钮,使用jQuery。然后离开该Web页面。确信page.includejsExit语句内或者它可能过早地退出之前的JavaScript代码。

    网页实例

    假设你有一个网页的实例:

    var page = require('webpage').create();

    可提取和执行?

    属性

    page.canGoForward -> boolean

    如果window.history。他们必须有效行动

    page.canGoBack -> boolean

    如果window.history。回去也是一个有效的行动

    • page.clipRect -> object

    可以设置成以下形式:

    { top: 0, left: 0,  1024, height: 768 }

    它规定了该部分屏幕将在屏幕截图

    page.content -> string

    整个HTML页面内容

    page.cookies -> object

    在饼干上。他们有这样的形式:

    {
        'name' : 'Valid-Cookie-Name',
        'value' : 'Valid-Cookie-Value',
        'domain' : 'localhost',
        'path' : '/foo',
        'httponly' : true,
        'secure' : false
    }
    page.customHeaders -> object

    要做的事情

    page.event -> object

    含有改性剂和钥匙要做的事情

    page.libraryPath -> string

    库路径的电流,通常是脚本的目录:从

    page.loading -> boolean

    如果页面已经被加载或不

    • page.loadingProgress -> number

    在已加载百分比。装置100,该页面被加载。

    page.navigationLocked -> boolean

    要做的事情

    page.offlineStoragePath -> string Where the sqlite3 localstorage and other offline data are stored.
    
    page.offlineStorageQuota, ‘number

    在字节的配额,可脱机保存

    page.paperSize -> object

    但现实生活中类似cliprect大小如A4纸。在示例性的深度检查这个

    page.plainText -> string

    在纯文本元素的页面

    page.scrollPosition -> object

    与当前滚动位置的对象的以下形式:

    {
        left: 0
        top: 0
    }
    page.settings -> object

    该设置仅对当前的UserAgent串page.settings。特别经理人UserAgent=′′;

    page.title -> string

    页面标题

    page.url -> string

    页面的URL

    page.viewportSize -> object

    浏览器尺寸的如下形式:

    {
         1024,
        height: 768
    }
    page.windowName -> string

    浏览器的名称指定的窗口Wm。

    page.zoomFactor -> number

    缩放因子1的正常放大。

    函数

    • page.childframescount
    • page.childframesname
    • page.close
    • page.currentframename
    • page.deletelater
    • page.destroyed
    • page.evaluate
    • page.initialized
    • page.injectjs
    • page.javascriptalertsent
    • page.javascriptconsolemessagesent
    • page.loadfinished
    • page.loadstarted
    • page.openurl
    • page.release
    • page.render
    • page.resourceerror
    • page.resourcereceived
    • page.resourcerequested
    • page.uploadfile
    • page.sendevent
    • page.setcontent
    • page.switchtochildframe
    • page.switchtomainframe
    • page.switchtoparentframe
    • page.addcookie
    • page.deletecookie
    • page.clearcookies

    回调处理程序/

    列表中的所有页面的事件:

    • oninitialized
    • onloadstarted
    • onloadfinished
    • onurlchanged
    • onnavigationrequested
    • onrepaintrequested
    • onresourcerequested
    • onresourcereceived
    • onresourceerror
    • onresourcetimeout
    • onalert
    • onconsolemessage
    • onclosing
  • 相关阅读:
    离散数学期中复习
    计算机组成原理实验_算术逻辑运算器的实现
    数值分析第一章插值方法
    数值分析绪论
    数值分析第三章 常微分方程的差分方法
    数值分析第二章 数值积分
    数据库删除信息后,再次加入信息ID不再从1开始的解决办法
    Codeforces Round #670 (Div. 2)(树的重心,dfs求子树大小)
    Codeforces Round #670 (Div. 2)B. Maximum Product(5个数乘积最大)
    Codeforces Round #668 (Div. 2)A->C
  • 原文地址:https://www.cnblogs.com/menu/p/6848655.html
Copyright © 2011-2022 走看看