返回信息流我再进行网页爬虫搞得设计。爬取论坛的过程中进行正则匹配时发现,如果相同的标签嵌套在一起,比如
<div >……
<div>……
<div class="">…… </div>——这是我想要的内容
</div>
</div>
我按照先找到div标签再去匹配<div class="">…… </div>这样它会由于嵌套的原因出现三次。能否有判断两层嵌套的正则表达式,只要它是两层的,我就结束这次,开始下个标签。
求大神帮助!提供好的思路。
拿整个网站的源代码去匹配的话怎么处理比较好!
感激不尽~
这是一条镜像帖。来源:北邮人论坛 / java / #40101同步于 2015/4/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
java中对于网页爬取中正则匹配最内层div标签
zcldoris
2015/4/23镜像同步20 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
=.=没明白lz是怎么匹配的。。
【 在 zcldoris 的大作中提到: 】
: 我再进行网页爬虫搞得设计。爬取论坛的过程中进行正则匹配时发现,如果相同的标签嵌套在一起,比如
: <div >……
: <div>……
: ...................
用 XPath 的话,//div/div/div[@class='xxx'] 就行了
【 在 zcldoris (Doris) 的大作中提到: 】
: 我再进行网页爬虫搞得设计。爬取论坛的过程中进行正则匹配时发现,如果相同的标签嵌套在一起,比如
: <div >……
: <div>……
: ...................
NodeFilter filter = new TagNameFilter("div");
NodeList list = parser.extractAllNodesThatMatch(filter);
利用这两句找所有的div。再去正则匹配div class。我用的是java语言
【 在 aiquestion 的大作中提到: 】
: =.=没明白lz是怎么匹配的。。
我用的是java。而且那个嵌套只是我举的例子,嵌套几个是未知数。谢谢~
【 在 dss886 的大作中提到: 】
: 用 XPath 的话,//div/div/div[@class='xxx'] 就行了
:
唔。没用过这个TagNameFilter。
为啥不直接用正则去匹配<div class"">xxx</div>然后用group提取xxx?
【 在 zcldoris 的大作中提到: 】
: NodeFilter filter = new TagNameFilter("div");
: NodeList list = parser.extractAllNodesThatMatch(filter);
: 利用这两句找所有的div。再去正则匹配div class。我用的是java语言
: ...................
java也可以用xpath,直接解析xml不觉得蛋疼么
【 在 zcldoris (Doris) 的大作中提到: 】
: 我用的是java。而且那个嵌套只是我举的例子,嵌套几个是未知数。谢谢~
恩。我就是这么做的了。谢谢!
【 在 aiquestion 的大作中提到: 】
: 唔。没用过这个TagNameFilter。
: 为啥不直接用正则去匹配<div class"">xxx</div>然后用group提取xxx?
我用的是parser,去过滤标签,之后分析标签。
不知道咋么弄了,查了查xpath,我再看看吧。谢了
【 在 dss886 的大作中提到: 】
: java也可以用xpath,直接解析xml不觉得蛋疼么
: