开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 3013|回复: 16
收起左侧

[已解决] 请问怎么取一个网页里的标题和对应链接?

 关闭 [复制链接]
结帖率:46% (6/13)
发表于 2012-10-13 16:06:27 | 显示全部楼层 |阅读模式   广东省东莞市
5精币
我想取出一个网页里面的所有链接,还有对应的标题,并加入到超级列表框里,超级列表框有序号、标题、链接这三栏。
随便一个网页只要分析源代码加上正则式匹配都能取出标题和链接,我想要的是任务网页都能取出的那种,就像在网页里点右键,再点“使用迅雷下载全部链接”迅雷就会分析出所有标题和链接一样,请大师们贡献下思路或方法,感激不尽!!!

我是新人,刚来没多少币,对于大家的帮助本人将铭记在心,如有需要我的地方请PM我,我将尽力而为!!!

最佳答案

查看完整内容

你再怎么变,他也是包含标题和链接和一些链接的必须特征,也就是 标题 红色和绿色部分,是肯定有的,蓝色的使用正则[\s\S]*?匹配掉,不要 正则就是:(.+?)

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值

结帖率:100% (11/11)

签到天数: 1 天

发表于 2012-10-13 16:06:28 | 显示全部楼层   广东省阳江市
klxq520 发表于 2012-10-13 16:51
你这是一般的取标题和链接吧,我做了一个跟你差不多的,同一个域名,不同的子链接,源代码相差很远,我碰 ...

你再怎么变,他也是包含标题和链接和一些链接的必须特征,也就是

<a 其他垃圾href="地址"其他垃圾>标题</a>

红色和绿色部分,是肯定有的,蓝色的使用正则[\s\S]*?匹配掉,不要

正则就是:<a [\s\S]*? href="(.+?)"[\s\S]*? >(.+?)</a>



点评

我用你的方法匹配出了标题和链接,但同时一堆没用的源代码也被匹配出来了。。。 除了用正则不知道还有什么好方法??   广东省东莞市  详情 回复 发表于 2012-10-13 17:19

评分

参与人数 1荣誉 +1 收起 理由
素顏じ亦傾城ジ + 1 热心帮助他人,奖励1点荣誉

查看全部评分

回复

使用道具 举报

结帖率:76% (13/17)
发表于 2012-10-13 16:08:15 | 显示全部楼层   北京市北京市
要看你要取的是哪个网页
回复

使用道具 举报

结帖率:100% (1/1)
发表于 2012-10-13 16:08:49 | 显示全部楼层   云南省昆明市
你去这里看看这个帖子的源码,或许可以帮助你解决问题。
地址:http://www.3600gz.cn/thread-102469-1-1.html

点评

晕了,精币被我赏出去没得下载了,我去赚回来先。。。   广东省东莞市  详情 回复 发表于 2012-10-13 16:33
回复

使用道具 举报

结帖率:95% (36/38)
发表于 2012-10-13 16:10:51 | 显示全部楼层   广东省揭阳市
正则,类似我这个帖子

求助版块的最新主题获取,抢答和获取荣誉点必备
http://www.3600gz.cn/thread-129699-1-1.html
回复

使用道具 举报

结帖率:100% (11/11)

签到天数: 1 天

发表于 2012-10-13 16:23:17 | 显示全部楼层   广东省阳江市
正则也是可以弄出来的,因为他们肯定包含标题的链接,只是有的网页多了些东西而已

点评

我是要任何网页都可以提取的,提取一个网页我们,但任意的网页我就找不到方法了,正则只能在源码里匹配,不同的网页有不同的源码,有时能匹配这个网页,但那个网页又不能匹配了。   广东省东莞市  详情 回复 发表于 2012-10-13 16:32
回复

使用道具 举报

结帖率:46% (6/13)
 楼主| 发表于 2012-10-13 16:32:21 | 显示全部楼层   广东省东莞市
御风软件 发表于 2012-10-13 16:23
正则也是可以弄出来的,因为他们肯定包含标题的链接,只是有的网页多了些东西而已

我是要任何网页都可以提取的,提取一个网页我们,但任意的网页我就找不到方法了,正则只能在源码里匹配,不同的网页有不同的源码,有时能匹配这个网页,但那个网页又不能匹配了。

点评

任何网页这个不可能啊~   广西壮族自治区贺州市  发表于 2012-10-13 16:33
回复

使用道具 举报

结帖率:46% (6/13)
 楼主| 发表于 2012-10-13 16:33:47 | 显示全部楼层   广东省东莞市
忧郁之子 发表于 2012-10-13 16:08
你去这里看看这个帖子的源码,或许可以帮助你解决问题。
地址:http://www.3600gz.cn/thread-102469-1-1.h ...

晕了,精币被我赏出去没得下载了,我去赚回来先。。。
回复

使用道具 举报

结帖率:100% (11/11)

签到天数: 1 天

发表于 2012-10-13 16:42:17 | 显示全部楼层   广东省阳江市
klxq520 发表于 2012-10-13 16:32
我是要任何网页都可以提取的,提取一个网页我们,但任意的网页我就找不到方法了,正则只能在源码里匹配, ...

出了链接和标题这个子文本匹配,其他的可以使用通用匹配的

<a href="http://www.3600gz.cn/thread-133776-1-1.html" id="thread_subject">请问怎么取一个网页里的标题和对应链接?</a>

<a  xx href="http://www.3600gz.cn/thread-133776-1-1.html" id="thread_xxx">请问怎么取一个网页里的标题和对应链接?</a>

你看到的这两个链接都是不同的(注意蓝色部分),但是这些不同的,我们可以不要,直接正则匹配掉

<a [\s\S]*?href="(.+?)" id=".+?">(.+?)</a>

红色的是正则匹配掉了,是我们不要的,我们要的是绿色的,也就是子匹配文本



点评

你这是一般的取标题和链接吧,我做了一个跟你差不多的,同一个域名,不同的子链接,源代码相差很远,我碰到的是这种问题,所以只能追求新方法新思路了,我实在没办法用正则去匹配任何一个网页,每个网站的设计人员不   广东省东莞市  详情 回复 发表于 2012-10-13 16:51
<a[\s\S]*?href="(.+?)"[\s\S]*?>(.+?)</a>   广东省阳江市  发表于 2012-10-13 16:45
改一下,应该是这样:<a [\s\S]*?href="(.+?)[\s\S]*?>(.+?)</a>   广东省阳江市  发表于 2012-10-13 16:44
回复

使用道具 举报

结帖率:46% (6/13)
 楼主| 发表于 2012-10-13 16:51:06 | 显示全部楼层   广东省东莞市
御风软件 发表于 2012-10-13 16:42
出了链接和标题这个子文本匹配,其他的可以使用通用匹配的

请问怎么取一个网页里的标题和对应链接?

你这是一般的取标题和链接吧,我做了一个跟你差不多的,同一个域名,不同的子链接,源代码相差很远,我碰到的是这种问题,所以只能追求新方法新思路了,我实在没办法用正则去匹配任何一个网页,每个网站的设计人员不一定会去遵循同一种规则,所以很难用一个表达式去匹配所有。迅雷或旋风有下载全部链接功能,一点就得到所有标题和链接,我不知道它用的是什么方法什么思路。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

关闭

精易论坛 - 有你更精彩上一条 /2 下一条

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表