码迷,mamicode.com
首页 > Web开发 > 详细

使用正则表达式提取网页有效信息

时间:2014-05-26 19:12:12      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:c   class   a   使用   html   htm   

从HTML页面提取内容所面临的主要问题是,我们必须寻找一种方法精确地识别出自己想要的那一部分内容。

以下是利用正则表达式匹配并提取网页中特定信息的方法:

采集网页中所有链接标记:

<a[^>]*?>[\s\S]*?</a>

以上可以修改a标记采集对应的标记元素。

采集图片:

<img[^>]*?/?>

以上可以修改img标记采集对应的标记元素。

<div[^>]*?id="idname"[^>]*?>[\s\S]*?</div>

根据 id与 class 取div段的内容,请以最小单位取div,因为嵌套关系会破坏,取出来的标记不匹配。

如果要匹配的话请使用下面的正则表式:

<(?<HtmlTag>div)[^>]*\sid=(?<Quote>["‘]?)idname(?(Quote)\k<Quote>)["‘]?[^>]*>((?<Nested><\k<HtmlTag>[^>]*>)|</\k<HtmlTag>>(?<-Nested>)|[\s\S]*?)*</\k<HtmlTag>>

对采集出来的html片段中链接地址去除:

<a(.[^>]*?)href(.[^>]*?)> 提取来替换成空。

再把</a>替换成空。

使用正则表达式提取网页有效信息,布布扣,bubuko.com

使用正则表达式提取网页有效信息

标签:c   class   a   使用   html   htm   

原文地址:http://www.cnblogs.com/binyue/p/3751982.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!