htmlunit 模拟指定浏览器

前面我们的测试代码是直接请求的,有些网站服务器防火墙会直接拒绝访问。

我们现在用htmlunit来模拟下浏览器请求;主要是加了一些头消息;
这里写图片描述

这个是我们用谷歌调试工具看到的请求头小心里的属性,当然上面还有返回的头消息;

我们用htmlunit可以模拟浏览器执行,内置的可以模拟IE,火狐,谷歌;

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.HtmlPage;
/**
 * 
 * @author 黄宝康
 *获取http://www.3dns.com.cn的源代码
 */
public class HtmlUnitTest 
{
    public static void main( String[] args )
    {
        WebClient webClient = new WebClient(BrowserVersion.FIREFOX_45); // 实例化Web客户端  
        try {
            HtmlPage page = webClient.getPage("http://www.3dns.com.cn/");
            System.out.println("网页html:"+page.asXml());// 获取html
            System.out.println("======================");
            System.out.println("网页文本:"+page.asText());// 获取文本
        } 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(); // 关闭客户端,释放内存
        }
    }
}

运行效果一样。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黄宝康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值