htmlunit 使用代理IP

内容转至http://blog.java1234.com/blog/articles/282.html
有时候频繁的爬取第三方站点内容,会被站点的防火墙拦截,IP拉黑,所以这时候,就要用到代理IP,拉黑一个就换一个;

htmlunit实用代理的方式比较简单,WebClient重载构造方法就有提供,我们看下演示代码:

package com.hbk.htmlunit;

import java.io.IOException;
import java.net.MalformedURLException;

import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.DomElement;
import com.gargoylesoftware.htmlunit.html.DomNodeList;
import com.gargoylesoftware.htmlunit.html.HtmlDivision;
import com.gargoylesoftware.htmlunit.html.HtmlListItem;
import com.gargoylesoftware.htmlunit.html.HtmlPage;

/**
 * 
 * @author 黄宝康 获取http://www.3dns.com.cn的源代码
 */
public class HtmlUnitTest {
    public static void main(String[] args) {
        WebClient webClient = new WebClient(BrowserVersion.FIREFOX_45,"118.212.137.135",31288); // 实例化Web客户端
        try {
            HtmlPage page = webClient.getPage("http://www.3dns.com.cn/");
            System.out.println("网页html:"+page.asXml());// 获取Html
        } catch (FailingHttpStatusCodeException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            webClient.close(); // 关闭客户端,释放内存
        }
    }
}

运行结果一样,只是速度会慢点,因为用了代理。

这里代理IP如何找 ,很多网站都有提供的,我们介绍一个,http://www.66ip.cn

这里写图片描述

我处地区在江西,选择江西相应免费的代理ip

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值