Java爬虫---httpClient连接

一,简介

通常静态网页时,我只用jsoup.jar包进行爬虫,简单可以获取网页的所有信息

/**
	 * 根据url获取Document对象
	 * @param url 小说章节url
	 * @return Document对象
	 */
	public static Document getDocument(String url){
		Document doc = null;
		try {
			doc = Jsoup.connect(url).timeout(5000).get();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return doc;
	}

二,特殊情况

有一些网页在获取信息时,使用Jsoup.jar爬虫,获取信息不完整,

那么现在只能使用apache的包,这样就可以获取到cookie和设置相应的cookie

还有设置访问的模式(例如我想使用的是手机的访问模式)

网页:"https://m.kayege.com/book/52194/504.html"(这个手机获取和pc端获取就不一样了)

设置:setHeader(...) -------------设置头部获取情况

可以查看Chorme中的network

如图

代码

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class Test1 {

	public static void main(String[] args) {
			try {
				CloseableHttpClient httpClient=HttpClients.createDefault(); // 创建httpClient实例
		        HttpGet httpGet=new HttpGet("https://m.kayege.com/book/52194/504.html"); // 创建httpget实例
		        httpGet.setHeader("user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Mobile Safari/537.36"); // 设置请求头消息User-Agent
		        CloseableHttpResponse response=httpClient.execute(httpGet); // 执行http get请求
		        HttpEntity entity=response.getEntity(); // 获取返回实体
		        System.out.println("网页内容:"+EntityUtils.toString(entity, "utf-8")); // 获取网页内容
		        response.close(); // response关闭
		        httpClient.close(); // httpClient关闭
			}catch (Exception e) {
				e.printStackTrace();
			}
		 	

	}

}

所用的包

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

康耶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值