本文实例讲述了JAVA获取任意http网页源代码。分享给大家供大家参考,具体如下:

JAVA获取任意http网页源代码可实现如下功能:
1. 获取任意http网页的代码
2. 获取任意http网页去掉HTML标签的代码
Webpage类:
/**
* 网页操作相关类
*/
package test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* @author winddack
*
*/
public class Webpage {
private String pageUrl;//定义需要操作的网页地址
private String pageEncode="UTF8";//定义需要操作的网页的编码
public String getPageUrl() {
return pageUrl;
}
public void setPageUrl(String pageUrl) {
this.pageUrl = pageUrl;
}
public String getPageEncode() {
return pageEncode;
}
public void setPageEncode(String pageEncode) {
this.pageEncode = pageEncode;
}
//定义取源码的方法
public String getPageSource()
{
StringBuffer sb = new StringBuffer();
try {
//构建一URL对象
URL url = new URL(pageUrl);
//使用openStream得到一输入流并由此构造一个BufferedReader对象
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream(), pageEncode));
String line;
//读取www资源
while ((line = in.readLine()) != null)
{
sb.append(line);
}
in.close();
}
catch (Exception ex)
{
System.err.println(ex);
}
return sb.toString();
}
//定义一个把HTML标签删除过的源码的方法
public String getPageSourceWithoutHtml()
{
final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定义script的正则表达式
final String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; // 定义style的正则表达式
final String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式
final String regEx_space = "\\s*|\t|\r|\n";//定义空格回车换行符
String htmlStr = getPageSource();//获取未处理过的源码
Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
Matcher m_script = p_script.matcher(htmlStr);
htmlStr = m_script.replaceAll(""); // 过滤script标签
Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
Matcher m_style = p_style.matcher(htmlStr);
htmlStr = m_style.replaceAll(""); // 过滤style标签
Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
Matcher m_html = p_html.matcher(htmlStr);
htmlStr = m_html.replaceAll(""); // 过滤html标签
Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);
Matcher m_space = p_space.matcher(htmlStr);
htmlStr = m_space.replaceAll(""); // 过滤空格回车标签
htmlStr = htmlStr.trim(); // 返回文本字符串
htmlStr = htmlStr.replaceAll(" ", "");
htmlStr = htmlStr.substring(0, htmlStr.indexOf("。")+1);
return htmlStr;
}
}
调用:
Webpage page=new Webpage();
page.setPageUrl("http://www.baidu.com");
String code=page.getPageSourceWithoutHtml();
System.out.println(code);
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools./regex/javascript
正则表达式在线生成工具:
http://tools./regex/create_reg
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java正则表达式技巧大全》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
# Java
# 获取
# 任意
# http网页
# 源代码
# JAVA使用爬虫抓取网站网页内容的方法
# java抓取网页数据获取网页中所有的链接实例分享
# java正则表达式匹配网页所有网址和链接文字的示例
# java简单网页抓取的实现方法
# Java中使用正则表达式获取网页中所有图片的路径
# java 抓取网页内容实现代码
# java抓取网页数据示例
# Java用正则表达式如何读取网页内容
# java实现网页解析示例
# 用javascrpt将指定网页保存为Excel的代码
# 正则表达式
# 操作技巧
# 相关内容
# 感兴趣
# 数据结构
# 给大家
# 更多关于
# 所述
# 程序设计
# 再为
# 测试工具
# 未处理
# 换行符
# 讲述了
# pageEncode
# pageUrl
# void
# return
# getPageUrl
相关文章:
代刷网站制作软件,别人代刷火车票靠谱吗?
已有域名能否直接搭建网站?
如何用西部建站助手快速创建专业网站?
建站之星在线客服如何快速接入解答?
如何自定义建站之星网站的导航菜单样式?
建站主机默认首页配置指南:核心功能与访问路径优化
Python文件管理规范_工程实践说明【指导】
高防服务器如何保障网站安全无虞?
建站主机是否等同于虚拟主机?
,网页ppt怎么弄成自己的ppt?
宝塔新建站点报错如何解决?
如何在云指建站中生成FTP站点?
简单实现Android文件上传
建站ABC备案流程中有哪些关键注意事项?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
公司网站设计制作厂家,怎么创建自己的一个网站?
建站主机CVM配置优化、SEO策略与性能提升指南
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
制作网站的基本流程,设计网站的软件是什么?
建站之星如何防范黑客攻击与数据泄露?
如何在Windows环境下新建FTP站点并设置权限?
头像制作网站在线制作软件,dw网页背景图像怎么设置?
如何在七牛云存储上搭建网站并设置自定义域名?
如何通过cPanel快速搭建网站?
如何使用Golang安装API文档生成工具_快速生成接口文档
如何做静态网页,sublimetext3.0制作静态网页?
如何在阿里云购买域名并搭建网站?
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
设计网站制作公司有哪些,制作网页教程?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
详解jQuery中基本的动画方法
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
建站之星官网登录失败?如何快速解决?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
大连 网站制作,大连天途有线官网?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
如何通过IIS搭建网站并配置访问权限?
如何快速搭建高效WAP手机网站?
行程制作网站有哪些,第三方机票电子行程单怎么开?
建站之星如何开启自定义404页面避免用户流失?
如何快速启动建站代理加盟业务?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
黑客如何通过漏洞一步步攻陷网站服务器?
企业网站制作公司网页,推荐几家专业的天津网站制作公司?
广东企业建站网站优化与SEO营销核心策略指南
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
宝塔建站无法访问?如何排查配置与端口问题?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
如何在万网ECS上快速搭建专属网站?
建站之星免费版是否永久可用?
*请认真填写需求信息,我们会在24小时内与您取得联系。