加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

java修改ip

(2009-04-23 14:04:59)
标签:

it

就业

package com.xyj.proxy;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.InetSocketAddress;
import java.net.MalformedURLException;
import java.net.Proxy;
import java.net.SocketAddress;
import java.net.URL;
import java.net.URLConnection;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class TestProxy {

   
public void setLocalProxy() {
        Properties prop
= System.getProperties();
        prop.setProperty(
"http.proxyHost", "222.222.222.222");
        prop.setProperty(
"http.proxyPort", "3128");

    }
   
// 清除proxy设置
    public void removeLocalProxy()
    {
    Properties prop
= System.getProperties();
    prop.remove(
"http.proxyHost");
    prop.remove(
"http.proxyPort");
    prop.remove(
"http.nonProxyHosts");
    prop.remove(
"https.proxyHost");
    prop.remove(
"https.proxyPort");
    prop.remove(
"ftp.proxyHost");
    prop.remove(
"ftp.proxyPort");
    prop.remove(
"ftp.nonProxyHosts");
    prop.remove(
"socksProxyHost");
    prop.remove(
"socksProxyPort");
    }
   
// 测试HTTP代理
   
//public void showHttpProxy(Object... proxy) {
    public void showHttpProxy(Object ... proxy) {
       
        URL url
= null;
       
try {
            url
= new URL("http://www.baidu.com");
        }
catch (MalformedURLException e) {
           
return;
        }
       
try {
            URLConnection conn
= null;
           
switch (proxy.length) {
           
case 0:
                conn
= url.openConnection();
               
break;
           
case 1:
                conn
= url.openConnection((Proxy) proxy[0]);
               
break;
           
default:
               
break;
            }
           
if (conn == null)
               
return;
            conn.setConnectTimeout(
10000); // 设置连接超时时间
            InputStream in = conn.getInputStream();
            BufferedReader br
= new BufferedReader(new java.io.InputStreamReader(in));
            String str
= null;
           
try {
               
while ((str = br.readLine())!=null) {
                   
if(str.indexOf("百度一下,你就知道")>0){
                       
break;
                    }
                }
           
            }
catch (IOException e1) {
            }
        }
catch (IOException e1) {
           
return;
        }
    }

   
// 得到一个proxy
    public static Proxy getProxy(String host, int port) {
        SocketAddress addr
= new InetSocketAddress(host, port);
        Proxy typeProxy
= new Proxy(Proxy.Type.HTTP, addr);
       
return typeProxy;
    }

   
public void test(){
        String pathurl
= "d:/temp.txt";
       
try {
            File file
= new File(pathurl);
            FileInputStream fin
= new FileInputStream(file);
            BufferedInputStream bin
= new BufferedInputStream(fin);
            BufferedReader ir
= new BufferedReader(new InputStreamReader(bin));
            String str
= null;
           
int count = 0;
            StringBuffer ip
= new StringBuffer();
           
while ((str = ir.readLine()) != null) {
           
                String ipfilter
= "\\\\d{1,3}\\\\.\\\\d{1,3}\\\\.\\\\d{1,3}\\\\.\\\\d{1,3}";

                Pattern p
= Pattern.compile(ipfilter);
                Matcher m
= p.matcher(str);
               
if (m.find()) {
                    count
++;
                    String port
= str.substring(str.indexOf(":")+1,str.length());
                   
if(port.indexOf("0")==0){
                        port
= port.substring(2, port.length());
                    }
                    String host
= m.group();
                   
int po = Integer.parseInt(port);
                   
//System.out.println(host+"--"+port);
                    System.out.println("----------"+count);
                    showHttpProxy(getProxy(host,po));
                }
               
// 获取端口号

            }
       

        }
catch (Exception e) {

        }
       
//showHttpProxy(getProxy("58.211.78.143",80));
    }
   
public static void main(String[] args) {
        TestProxy proxy
= new TestProxy();
       
//proxy.setLocalProxy();
        proxy.showHttpProxy(getProxy("203.162.2.138",80));
       
       
    }

}

0

阅读 收藏 喜欢 打印举报/Report
前一篇:java static块
后一篇:java手动修改ip
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有