我是靠谱客的博主 大胆未来,最近开发中收集的这篇文章主要介绍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();
			}
		 	

	}

}

所用的包

最后

以上就是大胆未来为你收集整理的Java爬虫---httpClient连接的全部内容,希望文章能够帮你解决Java爬虫---httpClient连接所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部