phantomjs 发送 get 请求

学习笔记 马富天 2017-07-17 11:05:02 428 0

【摘要】在 phantomjs 的官方文档中并没有详细给出 phantomjs 发送 get 请求的示例,我也尝试使用官方给出的 post 请求来改成 get 请求,但是行不通,然后就记录一下我使用的 get 请求方式。

我们使用 php 作为脚本代码执行 phantomjs.exe 命令,PHP 代码如下:

  1. header('content-type:text/html;charset=utf-8');
  2. $cmd = 'H:\wamp\www\xss_scanner\phantomjs --output-encoding=utf-8 /scanner2/phantomjs/get.js http://www.hole3.org/get.php?name=mafutian';
  3. exec($cmd,$output);
  4. $page_content = implode('', $output);
  5. var_dump(cutstr_html($page_content));

这里表示,对链接:http://www.hole3.org/get.php 发送请求,并且含有 get 参数 name,值为 mafutian,并将服务器反馈的结果显示出来。

get.php 文件中的代码如下:

  1. echo $_GET['name'];

get.js 中的代码如下:

  1. var webPage = require('webpage');
  2. var page = webPage.create();
  3. var system = require('system');
  4. //  如果命令行没有给出网址
  5. if(system.args.length === 1) 
  6. {
  7.     console.log('Usage: get.js <some URL>');
  8.     phantom.exit();
  9. }
  10. var url = system.args[1];
  11. page.settings.userAgent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36";
  12. page.open(url, function(status)
  13. {
  14.     if(status !== 'success')
  15.     {
  16.         console.log('Unable to get!');
  17.     }else
  18.     {
  19.         setTimeout(function() 
  20.         {
  21.             console.log(page.content);
  22.             phantom.exit();
  23.         }, 1200);
  24.     }
  25. });

最后的执行结果如图所示:

请输入图片名称

由此可见,可以通过该方法来使得 phantomjs 发送 get 请求。并且我也尝试使用其它的方法来发送 get 请求,但好像这是唯一的方法了。

版权归 马富天PHP博客 所有

本文标题:《phantomjs 发送 get 请求》

本文链接地址:http://www.mafutian.net/284.html

转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

0

0

上一篇《 使用 js 判断当前用户浏览的页面是 pc 端还是手机移动端 》 下一篇《 URL 中特殊字符转义 》

暂无评论

评论审核未开启
表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情
验证码

TOP10

  • 浏览最多
  • 评论最多