栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用PhantomJS提交表单

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用PhantomJS提交表单

我想到了。基本上,这是一个异步问题。您不能只是提交并期望立即呈现下一页。您必须等到触发下一页的onLoad事件。我的代码如下:

var page = new WebPage(), testindex = 0, loadInProgress = false;page.onConsoleMessage = function(msg) {  console.log(msg);};page.onLoadStarted = function() {  loadInProgress = true;  console.log("load started");};page.onLoadFinished = function() {  loadInProgress = false;  console.log("load finished");};var steps = [  function() {    //Load Login Page    page.open("https://website.com/theformpage/");  },  function() {    //Enter Credentials    page.evaluate(function() {      var arr = document.getElementsByClassName("login-form");      var i;      for (i=0; i < arr.length; i++) {         if (arr[i].getAttribute('method') == "POST") {          arr[i].elements["email"].value="mylogin";          arr[i].elements["password"].value="mypassword";          return;        }      }    });  },   function() {    //Login    page.evaluate(function() {      var arr = document.getElementsByClassName("login-form");      var i;      for (i=0; i < arr.length; i++) {        if (arr[i].getAttribute('method') == "POST") {          arr[i].submit();          return;        }      }    });  },   function() {    // Output content of page to stdout after form has been submitted    page.evaluate(function() {      console.log(document.querySelectorAll('html')[0].outerHTML);    });  }];interval = setInterval(function() {  if (!loadInProgress && typeof steps[testindex] == "function") {    console.log("step " + (testindex + 1));    steps[testindex]();    testindex++;  }  if (typeof steps[testindex] != "function") {    console.log("test complete!");    phantom.exit();  }}, 50);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/416115.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号