0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在java代码中使用HTTP代理IP

华益云HTTP爬虫IP 来源:华益云HTTP爬虫IP 作者:华益云HTTP爬虫IP 2022-08-04 15:38 次阅读

如何在java代码中使用HTTP代理IP。

以下代码主要围绕第一次接触HTTP代理IP的java新手来写。

直接把下面示例代码中的代理API,替换成你后台生成的代理API链接,就可以跑起来了。(步骤注释清晰)

以下只是一个示例代码,是一个基础的演示,具体的代码还是要根据你业务的实际情况去写的。

示例代码中的HTTP代理IP,我使用的是华益云的HTTP代理,注册就白嫖1万个高匿爬虫IP,有效期是一年,对于调试代码来说这个时间是非常的友好。

打开代理API,获取里面的IP,使用IP访问目标网站,其实代码中就是执行这个过程而已,然后加了几个错误判断有助于代码的稳定运行。(步骤注释清晰)

华益云-企业级HTTP爬虫代理IP供应商-点我免费领取示例代码demo中同款10000个高匿IP

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.DataOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.URL;
import java.util.ArrayList;
import java.net.Proxy;
class ProxyInfo{
    private String host;
    private int port;
    public ProxyInfo(String host, int port){
        this.host = host;
        this.port = port;
    }
    public String getHost(){
        return host;
    }
    public int getPort(){
        return port;
    }
}
class ProxyUtil{
    public static void main(String[] args)  {
        // 发送给服务器的标识
        String userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/532.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36";
        // 代理api(这里我推荐使用www.9vps.com华益云的HTTP代理API,注册就白嫖1万IP)
        String proxyUrl = "http://http.9vps.com/getip.asp?username=166xxxx6597&pwd=xxxxbaa59ce237dff65134984b9cxxxx&geshi=1&fenge=1&fengefu=&Contenttype=1&getnum=20&setcity=&operate=all&";
        // 请求代理url,获取代理ip 
        ArrayList outPutProxy = getProxy(proxyUrl, userAgent);
        if (outPutProxy.size() == 0){
            // 没有获取到代理
            return;
        }
        // 目标请求网站
        String url = "https://www.qq.com/";
 
        for (int i=0; i<3; i++){
            // 最多尝试三次
            try{
                ProxyInfo px =outPutProxy.remove(0);
                Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(px.getHost(), px.getPort()));
                String out = doReqWithProxyWrapper(url, userAgent, proxy);
                System.out.println(out);
                break;
            }catch(Exception e){
                e.printStackTrace();
                if (outPutProxy.size() == 0){
                    // 如果发现没有代理了,就去获取下。
                    outPutProxy = getProxy(proxyUrl, userAgent);
                }
            }   
        }
        //System.out.println(out);
    }

    public static String doReqWithProxyWrapper(String url,String userAgent,Proxy proxy) throws IOException{
        return requestGet(url, userAgent, proxy);
    }
    public static ArrayList getProxy(String proxyUrl, String userAgent){
        //String proxyUrl = "http://http.9vps.com/getip.asp?username=166xxxx6597&pwd=xxxxbaa59ce237dff65134984b9cxxxx&geshi=1&fenge=1&fengefu=&Contenttype=1&getnum=20&setcity=&operate=all&";
        String proxyIps;
        ArrayList outPutProxy = new ArrayList();
        try {
            proxyIps = requestGet(proxyUrl, userAgent,  null);
            System.out.println(proxyIps);
            // {"code":3002,"data":[],"msg":"error!用户名或密码错误","success":false}
            if (proxyIps.indexOf("{") > -1){
                throw new RuntimeException("[错误]"+proxyIps);
            }
            String[] splitedString = proxyIps.split("\n");
            for (int i=0; i;>


审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2956

    浏览量

    104530
  • HTTP
    +关注

    关注

    0

    文章

    501

    浏览量

    31047
  • 代码
    +关注

    关注

    30

    文章

    4741

    浏览量

    68323
收藏 人收藏

    评论

    相关推荐

    何在EDK中使用自己的 IP核?

    何在EDK中使用自己的 IP核呢? 这是很多人梦寐以求的事情。然而在EDK以及ISE的各种文档中对此却遮遮掩掩,欲语还休。
    发表于 02-11 13:35 2149次阅读

    HTTP代理应该怎么选择?

     在互联网中使HTTP代理IP确实给我们的日常生活带来很多便利,也正因为如此,市面上的同款产品越来越多,很多用户在选择的时候难免陷入困境,不知道该如何下手才好。  
    发表于 01-04 17:37 369次阅读

    python代码中使HTTP代理IP,demo注释清晰

    如何再python代码中使HTTP代理IP。 以下代码主要围绕第一次接触
    的头像 发表于 08-04 15:40 1021次阅读

    何在python代码中使HTTP代理IP

    何在python代码中使HTTP代理IP
    的头像 发表于 08-04 15:46 1248次阅读

    何在PHP代码中使HTTP代理IP

    何在PHP代码中使HTTP代理IP
    的头像 发表于 08-04 16:08 2406次阅读

    go语言代码中使HTTP代理IP的方法

    何在go语言代码中使HTTP代理IP
    的头像 发表于 08-04 16:13 3138次阅读

    何在易e语言代码中使HTTP代理IP

    何在易e语言代码中使HTTP代理IP,示例代码d
    的头像 发表于 08-05 16:29 6825次阅读

    何在c语言代码中使HTTP代理IP

    何在c语言代码中使HTTP代理IP,示例代码de
    的头像 发表于 08-05 16:31 2310次阅读

    何在c#语言代码中使HTTP代理IP

    何在c#语言代码中使HTTP代理IP,示例代码d
    的头像 发表于 08-05 16:33 2559次阅读

    java中怎么使用HTTP代理

    java中怎么使用HTTP代理,华益云python爬虫ip
    的头像 发表于 09-01 14:31 1653次阅读

    python中怎么使用HTTP代理

    python中怎么使用HTTP代理,华益云高匿爬虫代理ip
    的头像 发表于 09-01 14:36 1587次阅读

    PHP中怎么使用HTTP代理

    PHP中怎么使用HTTP代理,华益云高匿爬虫代理ip
    的头像 发表于 09-01 14:38 1715次阅读

    c语言中怎么使用HTTP代理

    如何再c语言代码中使HTTP代理IP
    的头像 发表于 09-01 14:44 1371次阅读

    python代码中如何使用HTTP代理

    华益云HTTP代理API有效期是一年,也就是说一年内这1万IP用完就没了,如果你一年都用不完那到时候剩余IP才会被清零,对于调试代码来说时间
    的头像 发表于 09-01 14:50 870次阅读

    何在python代码中使HTTP代理IP

    如何再python代码中使HTTP代理IP
    的头像 发表于 09-13 09:25 972次阅读