代码如下:

use HTTP::UserAgent;
use JSON::Tiny; my $check-url = 'www.baidu.com';
#say @*ARGS[0];
#检测命令行参数
if @*ARGS != {
$check-url = @*ARGS[].lc;
}else{
say 'no http/https, eg:';
say 'cms-check.p6 www.target.com';
exit;
}
my $url = 'http://120.24.44.134/yunxi-web/public/home/index';
#say $check-url;
#cookies
my $cookie = HTTP::Cookies.new;
#创建 一个Ie
my $ua =HTTP::UserAgent.new;
$cookie.set-cookie('Set-Cookie:XSRF-TOKEN=eyJpdiI6ImQyNWhPQjVcL2YyeTEzTnFiaUZXbUJRPT0iLCJ2YWx1ZSI6ImMxTzM5SDVrQldJVmF0NVduTEhsSXZEd2xZV05lZ2VOM2NueXhYdjM3RkhHNm1md3ZPYkpkeUxvdVlwSzg2Rk5pMkFVcEhVWWdQYjJDVmhqeFdsaXlRPT0iLCJtYWMiOiJkODU1NjUzM2Q1NzgwN2RhYTBhZDI3MTdmYTZiNDFhNzYwMDg5MmFlZDA0MWUyNWEyNmZjYjZhNmE3MGIyMjZhIn0%3D;
laravel_session=eyJpdiI6ImFSeGFmSWZBTXZseTdvNDFLVFVxdEE9PSIsInZhbHVlIjoiWGl5TDFRcTZydWJjVzlleUxRM1N4RUlReUVQdDZVTnNZMjNXb0FtWDE3azFuTkFRSXVNYVNzMit3dWdJaDcxSk95T0VEcjBDZVFoY1lVR0NURnBwUEE9PSIsIm1hYyI6ImEwNjM3OGVjZGUzYTk4ODY4NzJhMjg0ZTAzZDYwMGYwYTU2YzhjYzZmMmJjNTZiMTdmMDIyMmJkNzc0NDI4NTgifQ%3D%3D');
#request
my $request = HTTP::Request.new;
$request.header.field(:X-Requested-With<XMLHttpRequest>);
$request.header.field(:Referer($url));
$request.add-cookies($cookie);
$request.set-method: 'POST';
$request.uri: $url;
#上面设置请求头信息与cookie与请求方法 my %postdata = :_token<ZgA9ggjV9AGGNEO2dfDdeanuLlLbYzjiBGxAnq6h>,:update<''>,:http<http%3A%2F%2F>,:url($check-url),:level<>;
$request.add-form-data(%postdata);
#设置POST参数, 这个POST数据中的HTTP键其实是可以设置是HTTP还是HTTPS的, 这里为了方便, 全部设置检测试URL为HTTP类型 my $result = $ua.request($request);
#发送请求
#say $result.request.Str;
#say $result.content;
my $json = from-json($result.content);
#将JSON转化为PERL结构代码
#say $json.perl;
#say $json[0].WHAT;
say 'URL: '~$check-url; #当查询到数据时,数组第一个参数会自动转为HASH型
if $json[].WHAT.perl ne 'Hash' {
say 'Unknown';
}else{
say 'CMS: '~$json[]<name>;
} #用法:
#cms-check.p6 / cms-check.p6 url
#不要http或https开头

使用前请安装好 perl6

再用zef安装好所用的模块:

zef install HTTP::UserAgent --force;
zef install JSON::Tiny --force;

效果如下:

一般来说, 查不到CMS或服务器系统信息, 就返回未知(Unknown)

有时没法转换JSON时会出错, 下次有时间再改版一下。

perl6检测网站CMS脚本(测试代码)的更多相关文章

  1. 人脸识别引擎SeetaFaceEngine中Detection模块使用的测试代码

    人脸识别引擎SeetaFaceEngine中Detection模块用于人脸检测,以下是测试代码: int test_detection() { std::vector<std::string&g ...

  2. 360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法

    360在线网站安全检测,web安全测试AppScan扫描工具,XSS常用的攻击手法 如何做好网站的安全性测试 360网站安全检测 - 在线安全检测,网站漏洞修复,网站后门检测http://websca ...

  3. Dlib库中实现正脸人脸关键点(landmark)检测的测试代码

    Dlib库中提供了正脸人脸关键点检测的接口,这里参考dlib/examples/face_landmark_detection_ex.cpp中的代码,通过调用Dlib中的接口,实现正脸人脸关键点检测的 ...

  4. Dlib库中实现正脸人脸检测的测试代码

    Dlib库中提供了正脸人脸检测的接口,这里参考dlib/examples/face_detection_ex.cpp中的代码,通过调用Dlib中的接口,实现正脸人脸检测的测试代码,测试代码如下: #i ...

  5. Optimizely:在线网站A/B测试平台

    Optimizely:在线网站A/B测试平台是一家提供 A/B 测试服务的公司.A/B 测试能够对比不同版本的设计,选取更吸引用户眼球的那一款,从而带来更为优化的个人体验.让网站所有者易于对不同版本的 ...

  6. perl 脚本测试

      原文地址:  http://blog.csdn.net/johnny710vip/article/details/8905239   这是一篇关于perl脚本测试的总结性文章,其中提到了很多实用的 ...

  7. [转] Optimizely:在线网站A/B测试平台

    Optimizely:在线网站A/B测试平台是一家提供 A/B 测试服务的公司.A/B 测试能够对比不同版本的设计,选取更吸引用户眼球的那一款,从而带来更为优化的个人体验.让网站所有者易于对不同版本的 ...

  8. php 网站301重定向设置代码实战案例

    php 网站301重定向设置代码实战案例 301重定向就是页面永久性移走的意思,搜索引擎知道这个页面是301重定向的话,就会把旧的地址替换成重定向之后的地址. 302重定向就是页面暂时性转移,搜索引擎 ...

  9. [置顶] pycurl检测网站性能,pycurl.*_TIME时间问题

    今天使用python+pycurl来检测网站性能,使用curl_obj.getinfo(pycurl.*_TIME)来获取各个阶段运行时间 total_time = curl_obj.getinfo( ...

随机推荐

  1. 【Python】Python流程控制

    1)if条件测试 Python的比较操作 所有的Python对象都支持比较操作 测试操作符('=='操作符测试值的相等性: 'is'表达式测试对象的一致性) Python中不同类型的比较方法 数字:通 ...

  2. 【JavaScript】时间戳转日期格式

    时间戳: 1480570979000 $.ajax({ url : "getOrderMsg?shiplabel="+ shiplabel, type : "get&qu ...

  3. BZOJ4896 THUSC2016补退选(trie)

    字符串扔进trie,vector记录每个前缀出现次数的最大值的更新记录即可. #include<iostream> #include<cstdio> #include<c ...

  4. 【刷题】洛谷 P4142 洞穴遇险

    题目背景 ZRQ在洞穴中准备采集矿物的时候遇险了!洞穴要塌了! 题目来源:zhoutb2333 题目描述 整个洞穴是一个 \(N*N\) 的方格图,每个格子形如 \((X,Y),1 \le X,Y \ ...

  5. mysql权限管理,用户管理

    1 创建用户 mysql> truncate table user; //先删除所有用户 mysql> CREATE USER  'paris'@'localhost' IDENTIFIE ...

  6. win平台搭建Lnmp环境

    win10上面安装的phpStudy这些天有时候打不开网页 502,请求一直loading,就算是代码问题我也扶不住,安装个Redis,mongodb都超级麻烦,并且好多都模拟Linux做的东西,最终 ...

  7. ASCLL表

    ASCII码表完整版 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 ASCII值 控制字符 0 NUT 32 (space) 64 @ 96 . 1 SOH 33 ! 65 ...

  8. Codeforces Round #306 (Div. 2)A B C D 暴力 位/暴力 暴力 构造

    A. Two Substrings time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  9. bash shell输出颜色

    http://note.youdao.com/noteshare?id=9de6d5fac6380447df112dff5bc404a1

  10. vim 单文件中查找方法

    1.vim 单文件中查找方法 正常模式下使用 / 或 ? 命令执行向后搜索或向前搜索 /love   从光标位置向前搜索关键词 love ?love   从光标位置向后搜索关键词 love 正常模式下 ...