`
you_java
  • 浏览: 95404 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

HttpClient根据jsoup解析网页

    博客分类:
  • java
阅读更多

package jsoup;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

/**
 * 利用HttpClient获取html代码,然后使用jsoup对html代码进行解析
 * @author Administrator
 *
 */
public class JustTest {
	public static void main(String[] args) {
		String html = getHtmlByUrl("http://www.iteye.com/");
		if (html != null && !"".equals(html)) {
			Document doc = Jsoup.parse(html);
			Elements linksElements = doc
					.select("div#page>div#content>div#main>div.left>div#recommend>ul>li>a");
			// 以上代码的意思是 找id为“page”的div里面 id为“content”的div里面 id为“main”的div里面
			// class为“left”的div里面 id为“recommend”的div里面ul里面li里面a标签
			for (Element ele : linksElements) {
				String href = ele.attr("href");
				String title = ele.text();
				System.out.println(href + "," + title);
			}
		}
	}

	/**
	 * 根据URL获得所有的html信息
	 * 
	 * @param url
	 * @return
	 */
	public static String getHtmlByUrl(String url) {
		String html = null;
		HttpClient httpClient = new DefaultHttpClient();// 创建httpClient对象
		HttpGet httpget = new HttpGet(url);// 以get方式请求该URL
		try {
			HttpResponse responce = httpClient.execute(httpget);// 得到responce对象
			int resStatu = responce.getStatusLine().getStatusCode();// 返回码
			if (resStatu == HttpStatus.SC_OK) {// 200正常 其他就不对
				// 获得相应实体
				HttpEntity entity = responce.getEntity();
				if (entity != null) {
					html = EntityUtils.toString(entity);// 获得html源代码
					System.out.println(html);
				}
			}
		} catch (Exception e) {
			System.out.println("访问【" + url + "】出现异常!");
			e.printStackTrace();
		} finally {
			httpClient.getConnectionManager().shutdown();
		}
		return html;
	}
}
 
分享到:
评论

相关推荐

    httpClient采集jsoup解析

    使用httpClient采集数据,jsoup解析页面

    使用HttpClient 和 jsoup 下载 Google logo

    Google的logo,感觉设计的很好,最近看了java的jsoup(html 解析器)把Google的logo全部下载下来,另外,在Google logos页面发现都是英文的,通过利用Google翻译api对logo说明进行翻译,最终把图片信息以及翻译结果...

    HttpClient + Jsoup 模拟登陆,解析HTML,信息筛选(广工图书馆)

    NULL 博文链接:https://chenchuangfeng.iteye.com/blog/1821861

    Jsoup解析Html获取新闻列表

    使用jsoup解析hmtl,获取对应数据

    爬虫的HttpClient和解析的Jsoup

    httpclient.jar、org.apache.commons.lang-2.6.jar、commons-logging-1.2.jar、commons-codec-1.12.jar; jsoup-1.11.3.jar、jsoup-1.11.3-sources.jar、jsoup-1.11.3-javadoc.jar;

    jsoup+httpclient

    根据传入的关键字,利用Jsoup和httpclient协议解析的各大视频网站的网站视频播放列表和链接地址,源码和jar包全都有,无错版,很好的学习资料

    Java_small-Applaction:使用HttpClient和Jsoup开发的Java爬虫,主要实现加载页面分析页面源代码并提取出相关数据

    利用jsoup解析字符串形式的html网页源代码 提取出课程的名称,分数,存储到一个Set集合中 开发流程: 通过浏览器分析网站的请求方式为get方式,所以在网址后面添加参数用户名和密码登录系统,实际通过用户自己输入...

    Httpclient4.0和3.0及jsoup等相关jar包

    1.含有官方HttpClient4.0的jar包 2.有之前HttpClient3.0的jar包,就是import importorg.apache.commons.*; 3.包含jsoup,解析HTML的jar包 4.包含jcookie.jar及jtidy-r938.jar的jar包.

    java解析网页

    java解析网页,用了jsoup httpclient,oracle连接数据库,解析主要是期刊类型的网页

    Jsoup+httpclient 模拟登陆和抓取

    Jsoup+httpclient 模拟登陆和抓取页面 package com.app.html; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader...

    leetcode答案-fetch-leetcode-submission:抓取LeetCodeOJ个人提交的代码

    HttpClient、jsoup 抓取、解析网页 使用说明 进入release文件夹 修改init.properties 中的配置 #登录账号 username=your_username #登录密码 password=your_password #登录类型,值暂时只能为leetcode或github ...

    jsoup-1.13.1.jar

    jsoup是一款Java的HTML解析器,主要用来对HTML解析在爬虫的时候,当我们用HttpClient之类的框架,获取到网页源码之后,需要从网页源码中取出我们想要的内容,就可以使用jsoup这类HTML解析器了。可以非常轻松的实现。

    开发至今搜集到的所有jar包

    学JAVA开发存储的所有JAR包,包括三大框架,各类Json解析,数据库连接池,操作excel,矩阵运算,httpclient,jsoup,utlrewrite等等

    httpclient+jpoup的jar包

    jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 HttpClient 是 Apache Jakarta Common 下的子项目...

    java实现在线抓取网易云用户信息

    java实现在线抓取网易云用户信息,支持在线抓取网易云用户信息,用户头像,昵称,电话等等;抓取网易云音乐热门歌手及其歌曲、专辑等...使用HttpClient和Jsoup进行模拟请求并对网页进行解析;使用mybatis作为数据访问

    netWworkTest

    Android Jsoup与HttpClient网络爬虫解析

    JAVA 人人网登陆实例代码(基于Apache httpclient 4.2.X)

    基于apache httpclient 4.2.X开发 自动处理redirect url jsoup解析response text log4j 自动生成日志 源代码基于UTF-8编码,如果出现乱码请切换到此编码 压缩包 包含所有jar文件。

    Java网络蜘蛛(爬c)源码.zip

    Java的网络爬虫通常基于Java的网络编程库,如URLConnection或Apache HttpClient等,以及HTML解析库,如Jsoup。其工作原理通常包括以下步骤: 1. URL解析:爬虫从一个或多个起始URL开始,解析这些URL,获取其协议、...

Global site tag (gtag.js) - Google Analytics