Java实现C段域名IP采集

yzmm
635 阅读
只要再简简单单的封装一下就能够以在线的方式供别人查询了。
package net.ltan.bbs.util;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class DomainUtil {
        static Pattern urlMatcher = Pattern.compile("(http|ftp|https):\\/\\/[\\w\\-_]+(\\.[\\w\\-_]+)+([\\w\\-\\.,@?^=%&:/~\\+#]*[\\w\\-\\@?^=%&/~\\+#])?");// 抓网址
        /**
         * 返回c段Ip list
         * 
         * @param s
         * @param e
         * @return
         */
        public static List<String> createCIp(String s, String e) {
                String[] sarr = s.split("\\.");
                String[] earr = e.split("\\.");
                List<String> ip = new ArrayList<String>();
                if (Integer.parseInt(earr[2]) - Integer.parseInt(sarr[2]) > -1) {
                        for (int i = Integer.parseInt(sarr[2]); i < Integer
                                        .parseInt(earr[2]) + 1; i++) {
                                for (int j = 1; j < 256; j++) {
                                        // ip.add(sarr[0]+"."+sarr[1]+"."+i+"."+j);
                                        System.out.println("http://sameip.org/ip/" + sarr[0] + "."+ sarr[1] + "." + i + "." + j);
                                        getDomain(SendHttpRequest.sendGetRequest("http://sameip.org/ip/" + sarr[0]+ "." + sarr[1] + "." + i + "." + j));
                                }
                        }
                }
                return ip;
        }
        public static void get(){
                getDomain(SendHttpRequest.sendGetRequest("http://sameip.org/ip/vip.qq.com"));
        }
        public static void getDomain(String sourceCode) {
                String urlS = "<table cellspacing=\"1\" width=\"100%\">";
                if (sourceCode.indexOf(urlS) != -1) {
                        String urlE = "</table>";
                        sourceCode = sourceCode.substring(sourceCode.indexOf(urlS)+ urlS.length(), sourceCode.indexOf(urlE));
                        Matcher matcher = urlMatcher.matcher(sourceCode);
                        while(matcher.find()){
                                System.out.println(matcher.group());
                        }
                }
        }
        public static void main(String[] args) {
                List<String> ip = createCIp("113.10.245.23", "113.10.245.23");
                for (int i = 0; i < ip.size(); i++) {
                        System.out.println(ip.get(i));
                }
//                get();
        }
}

评论 (0)

发表评论