javagethtml的简单介绍

博主:adminadmin 2022-11-23 08:24:08 56

本篇文章给大家谈谈javagethtml,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java爬虫 怎么动态的获取html

package httpclient_learn;import java.io.IOException;import org.apache.http.HttpEntity;import org.apache.http.HttpStatus;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.utils.HttpClientUtils;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;public class HttpClientTest {

public static void main(String[] args) { //1.生成httpclient,相当于该打开一个浏览器

CloseableHttpClient httpClient = HttpClients.createDefault();

CloseableHttpResponse response = null; //2.创建get请求,相当于在浏览器地址栏输入 网址

HttpGet request = new HttpGet(""); try { //3.执行get请求,相当于在输入地址栏后敲回车键

response = httpClient.execute(request);

//4.判断响应状态为200,进行处理

if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { //5.获取响应内容

HttpEntity httpEntity = response.getEntity();

String html = EntityUtils.toString(httpEntity, "utf-8");

System.out.println(html);

} else { //如果返回状态不是200,比如404(页面不存在)等,根据情况做处理,这里略

System.out.println("返回状态不是200");

System.out.println(EntityUtils.toString(response.getEntity(), "utf-8"));

}

} catch (ClientProtocolException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} finally { //6.关闭 HttpClientUtils.closeQuietly(response);

HttpClientUtils.closeQuietly(httpClient);

}

}

}

java获取html

Java访问网络url,获取网页的html代码

方式一:

一是使用URL类的openStream()方法:

openStream()方法与制定的URL建立连接并返回InputStream类的对象,以从这一连接中读取数据;

openStream()方法只能读取网络资源。

二是使用URL类的openConnection()方法:

openConnection()方法会创建一个URLConnection类的对象,此对象在本地机和URL指定的远程节点建立一条HTTP协议的数据通道,可进行双向数据传输。类URLConnection提供了很多设置和获取连接参数的方法,最常用到的是getInputStream()和getOutputStream()方法。

openConnection()方法既能读取又能发送数据。

列如:

public static void main(String args[]) throws Exception {

try {

//输入url路径

URL url = new URL("url路径"); InputStream in =url.openStream(); InputStreamReader isr = new InputStreamReader(in); BufferedReader bufr = new BufferedReader(isr); String str; while ((str = bufr.readLine()) != null) { System.out.println(str); } bufr.close(); isr.close(); in.close(); } catch (Exception e) { e.printStackTrace(); } }

如何使用java的正则表达式提取html标签

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class Test {

    public static void main(String args[]) {

        String html = "titleABCD/titlegsdggastitle/titlejklltitle005/title";

        // 简单示例,相当于String html=getHtml(String urlString);

        List resultList = getContext(html);

        for (Iterator iterator = resultList.iterator(); iterator.hasNext();) {

            String context = (String) iterator.next();

            System.out.println(context);

        }

    }

    

    /**

     * 提取"titleXXXX/title"中的文字XXXX

     * @param html 要解析的html文档内容

     * @return 解析结果,可以多次匹配,每次匹配的结果按文档中出现的先后顺序添加进结果List

     */

    public static List getContext(String html) {

        List resultList = new ArrayList();

        Pattern p = Pattern.compile("title([^/title]*)");//匹配title开头,/title结尾的文档

        Matcher m = p.matcher(html );//开始编译

        while (m.find()) {

            resultList.add(m.group(1));//获取被匹配的部分

        }

        return resultList;

    }

}

java怎样读取html文件

java可以使用jsoup、htmlparser等工具进行html的读取和解析,以下是详细说明:

1、jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据。据说它是基于MIT协议发布的。

jsoup的主要功能如下:

从一个URL,文件或字符串中解析HTML;

使用DOM或CSS选择器来查找、取出数据;

可操作HTML元素、属性、文本;

示例代码:

Document doc = Jsoup.parse(input, "UTF-8", "");

Element content = doc.getElementById("content");

Elements links = content.getElementsByTag("a");

for (Element link : links) {

String linkHref = link.attr("href");

String linkText = link.text();

}

2、htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或提取html。它能超高速解析html,而且不会出错。现在htmlparser最新版本为2.0。 据说htmlparser就是目前最好的html解析和分析的工具。无论你是想抓取网页数据还是改造html的内容,用了htmlparser绝对会忍不住称赞。

在线文档: ;

示例代码:

Parser parser = new Parser ("");

NodeList list = parser.parse (null);

Node node = list.elementAt (0);

NodeList sublist = node.getChildren ();

System.out.println (sublist.size ());

javagethtml的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、javagethtml的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-23,除非注明,否则均为首码项目网原创文章,转载请注明出处。