正则表达式抓取网页资源
分享一个工具类,用户抓取网页上的图片、js、css等路径
传入
package lab2;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
*
* 项目名称:lab
* 类名称:Snippet
* 类描述:TODO 根据html源码中的资源路径
* 创建人: yy
* 创建时间:2016年11月30日 下午5:26:38
* @version
*/
public class Snippet {
/**
* @Title: getSrc
* @Description: TODO 获取指定标签的src属性集合
* @date 2016年11月30日
* @author yy
* @param @param htmlStr 网页源码
* @param @param htmlMark 标签名 eg. img
* @param @return 所有指定标签的src属性
* @return List<String>
* @throws
*/
public static List<String> getSrc(String htmlStr,String htmlMark){
String ele="";
Pattern p;
Matcher m;
List<String> res = new ArrayList<String>();
String reg = "<"+htmlMark+".*src\\s*=\\s*(.*?)[^>]*?>"; //img:<img.*src\\s*=\\s*(.*?)[^>]*?>
p = Pattern.compile
(reg,Pattern.CASE_INSENSITIVE);
m = p.matcher(htmlStr);
while(m.find()){
ele = ele + "," + m.group();
Matcher mr = Pattern.compile("src\\s*=\\s*\"?(.*?)(\"|>|\\s+)").matcher(ele);
while(mr.find()){
res.add(mr.group(1));
}
}
return res;
}
/**
* @Title: getHref
* @Description: TODO 获取指定标签的href属性集合
* @date 2016年11月30日
* @author yy
* @param @param htmlStr 网页源码
* @param @param htmlMark 标签名 eg. a
* @param @return 所有指定标签的href属性
* @return List<String>
* @throws
*/
public static List<String> getHref(String htmlStr,String htmlMark){
String ele="";
Pattern p;
Matcher m;
List<String> res = new ArrayList<String>();
String reg = "<"+htmlMark+".*href\\s*=\\s*(.*?)[^>]*?>"; //img:<img.*src\\s*=\\s*(.*?)[^>]*?>
p = Pattern.compile
(reg,Pattern.CASE_INSENSITIVE);
m = p.matcher(htmlStr);
while(m.find()){
ele = ele + "," + m.group();
Matcher mr = Pattern.compile("href\\s*=\\s*\"?(.*?)(\"|>|\\s+)").matcher(ele);
while(mr.find()){
res.add(mr.group(1));
}
}
return res;
}
}
正则表达式抓取网页资源相关推荐
- python3实现抓取网页资源的 N 种方法(内附200GPython学习资料)
这两天学习了python3实现抓取网页资源的方法,发现了很多种方法,所以,今天添加一点小笔记. 文章最后为各位小伙伴提供超级彩蛋!不要错过了! 1.最简单 import urllib.request ...
- php curl与正则表达式抓取网页数据的例子
php使用curl和 正则表达式抓取网页数据示例,这里是抓取某网站的小说. 利用 curl和正则表达式做的一个针对磨铁中文网非vip章节的小说抓取器,支持输入小说ID下载小说. 依赖项:curl 可以 ...
- php正则获取li,用正则表达式抓取网页中的ul 和 li标签中最终的值!
获取你要抓取的页面 const string URL = "http://www.hn3ddf.gov.cn/price/GetList.html?pageno=1"; ...
- 【精华】【经典】自动化循环操作方法当前网页方法,可以用于本地化AI智能自动抓取网页资源信息,类似爬虫功能
第一种:需要刷新当前页面重复执行的操作--使用场景:刷点击率 .秒杀活动.抢沙发 //自动化循环操作方法 var doLoop = function (dom) {dom || (dom = docu ...
- php 正则抓取页面内容_php使用curl和正则表达式抓取网页数据示例
session_start(); //封装成类 开启这些自动抓取文章 #header("Refresh:30;http://www.test.com:8080"); class S ...
- python抓资源_python3 抓取网页资源的 N 种方法
转自:https://www.cnblogs.com/goldd/p/5457229.html 1.最简单 import urllib.request response = urllib.reques ...
- 正则表达式抓取文件内容中的http链接地址
转自:https://www.cnblogs.com/akiradunn/p/5855073.html 1 import java.io.BufferedReader; 2 3 import java ...
- php抓取标签内的内容,php抓取网页中的内容
以下就是几种常用的用php抓取网页中的内容的方法. 1.file_get_contents PHP代码 代码如下:>>>>>>>>>>> ...
- 转载自android 开发--抓取网页解析网页内容的若干方法(网络爬虫)(正则表达式)
转载自http://blog.csdn.net/sac761/article/details/48379173 android 开发--抓取网页解析网页内容的若干方法(网络爬虫)(正则表达式) 标签: ...
最新文章
- 佳能80d有人脸识别吗_国家地理2020年旅行者最推荐相机Top10,有你喜欢的吗?
- 5.用户APC执行过程
- 看完后,我才明白 Redis 为什么默认 16 个数据库?
- CTF-杂项之工具使用汇总(一)
- c语言中英文翻译 毕业设计,c语言中英文翻译资料 本科毕业论文设计.doc
- HDU - 5889 Barricade(最短路+最小割-最大流)
- Java程序员之完美代码
- C语言中printf(built: %s %s,__TIME__,__DATE__);方便调试
- 【LeetCode笔记】49. 字母异位词分组(Java、字符串、哈希表)
- Android开发在路上:少去踩坑,多走捷径
- 《程序员修炼之道——从小工到专家》(典藏书)
- mysql study_mysql_study_3
- 复盘:windows ubuntu 双系统引导恢复、分区表恢复
- 明通智能:EA交易外汇ea能稳定盈利吗?
- Python9--面向对象编程
- logutils java_简单的日志工具类LogUtils
- 各种逆元求法 组合数取模 comb (组合数 Lucas)
- Anyka云平台调用api
- python教学视频k_10个Python奇趣教程,附视频讲解+练手项目。
- Android Hierarchy Viewer