改了改之前那个很糙的XXX
将就着用X度去爬吧
<?php
echo "***************************************\r\n";
echo "* SubDomain Spider *\r\n";
echo "* Author:Debug0 *\r\n";
echo "***************************************\r\n\r\n";
if($argc<3)
{
echo "Usage:php $argv[0] Domain depth\r\n\r\n";
echo "Example:php $argv[0] qq.com 101\r\n";
die();
}
$domain=$argv[1];
$page=0;
$curl=curl_init();
$output="";
while($page<=$argv[2])
{
$query="/s?wd=site%3A($domain)&pn=".$page;
$page+=10; //默认每页10条结果,所以翻页加10
$url="http://www.baidu.com".$query;
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
$output.=curl_exec($curl);
}
$regexp="/g\">.*".$domain."\//i";
$result=array();
preg_match_all($regexp, $output, $result);
$result2=$result[0];
foreach($result2 as $k=>$v)
{
$result2[$k]=trim($v,"g\">");
$pos=strpos($result2[$k],"/");
$result2[$k]=substr($result2[$k],0,$pos);
}
$result2=array_unique($result2);
foreach ($result2 as $v) {
echo $v."\r\n";
}
$num=count($result2);
echo "\r\nTotal SubDomains: ".$num;
?>

改了改之前那个很糙的XXX的更多相关文章
- 可是把ie67下面的bug改好了,其实很简单,ie67下面取出来的字符串是带有空格的,不知道为什么
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 爱伪装(AWZ)/爱立思(ALS)改机改串一键新机原理分析
简介 爱伪装(AWZ)/爱立思(ALS)是一款iOS越狱系统上的改机工具,可以修改多种系统参数达到伪装设备型号及各种软硬件属性的目的,同时提供了防越狱检测机制,常用于iOS上的推广刷量,配合代理/VP ...
- drf序列化单改-整改-局部改-群改接口的实现
整体单改 路由层.模型层.序列化层不需要做修改,只需要处理视图层:views.py """ 1) 单整体改,说明前台要提供修改的数据,那么数据就需要校验,校验的数据应该在 ...
- 自己写的python脚本(抄的别人的,自己改了改,用于整理大量txt数据并插入到数据库)
昨天,遇到了一个问题,有100w条弱口令数据,需要插入到数据库中,而且保存格式为txt. 身为程序员不可能一条一条的去写sql语句吧(主要是工作量太大,我也懒得干).所以,我 就百度了一下,看有没有相 ...
- idea js改来改去无效问题的解决
不是idea的问题,问题在Chrome上,设置:
- 以为是tomcat出现using问题,怎么改都改不好终于找到原因
我也是醉了被自己打败了,以上问题困扰我半天是时间,百度好久都没有解决.应该打开tomcat的bin下的starup.bat结果打开了tomcat-src中的了,怪不得死活出现不了startup
- 关于eclipse android 在manifest改app应用包名注意事项
在我刚学android 时候,然后立即就做项目.那时连eclipse 使用都不是很熟练.很多功能都不知道.新手如果这时去改app应用的包名,没有改好会变成所有控件在R文件里面id都找不到. 先上两张图 ...
- 手把手教你把VIM改成一个集成开发环境
转载自:http://blog.csdn.net/wooin/article/details/1858917 在原文基础上经过自己验证,修改和完善 OS:Fedora19 VIM:VIM7.4 一.写 ...
- pycharm 新建文件后选错文件格式怎么改
经常在新建文件的时候,忘记填写文件后缀,导致文件无默认格式,而且同名字的文件怎么改都改不成想要的格式,所以随手记录一下怎么修正: 原因:肯定是pycharm已经默认指定了一个格式,所以再重复新建同样名 ...
随机推荐
- typescript-学习使用ts-2
解构赋值 数组解构 let input = [1, 2]; let [first, second] = input; console.log(first); // outputs 1 console. ...
- ZZJ_淘淘商城项目:day03(淘淘商城02 - 后台系统功能实现)
1. 今日大纲 1. 学习Nginx的使用 2. 实现商品的管理 a) 新增商品 b) 查询商品列表 c) 编辑商品 d) 删除商品 e) ...
- 如何将本地未提交的更改合并到另一个Git分支?
如何在Git中执行以下操作? 我当前的分支是branch1,我做了一些本地更改. 但是,我现在意识到我实际上是要将这些更改应用于branch2. 有没有办法应用/合并这些更改,以便它们成为branch ...
- 爬虫笔记(十一)——认识cookie
什么是cookie? 在爬虫的使用中,如果涉及登录等操作时,经常会使用到cookie.简单的来说,我们访问每一个互联网页面,都是通过HTTP协议进行的,而HTTP协议是一个无状态协议,所谓的无状态协议 ...
- Opencv笔记(五)——把鼠标当画笔
学习目标: 学习使用 OpenCV 处理鼠标事件 学会使用函数cv2.setMouseCallback() 简单演示: 首先我们来创建一个鼠标事件回调函数,但鼠标事件发生是他就会被执 ...
- Linux保护机制
RELRO(RELocation Read Only) 在Linux中有两种RELRO模式:"Partial RELRO" 和 "Full RELRO".Lin ...
- 基础篇三:Nginx介绍
Nginx是一个开源,高性能,可高的http中间件,代理服务 常见的中间件服务: httpd apache基金会的产品 IIS 微软的产品 gws google的产品 选择Ng ...
- VLC查看日志的方法
最近使用VLC去播放rtsp网络串流总是失败,显示要查看日志,查看的方法: 进入VLC的GUI,点击视图,添加界面,添加调试窗口: 添加调试窗口,会弹出界面: 上面会有报错的提示. 大佬如果有其他的办 ...
- [LC] 144. Binary Tree Preorder Traversal
Given a binary tree, return the preorder traversal of its nodes' values. Example: Input: [1,null,2,3 ...
- JsonPath入门教程
有时候需要从json里面提取相关数据,必须得用到如何提取信息的知识,下面来写一下 语法格式 JsonPath 描述 $ 根节点 @ 当前节点 .or[] 子节点 .. 选择所有符合条件的节点 * 所有 ...