C# 如何根据关键词获取html页面的超链接

问题描述

例如<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default3.aspx.cs"Inherits="Default3"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><title></title></head><body><divid="show"><ahref="www.baidu.com">百度</a></div></body></html>我根据百度这个关键词获取www.baidu.com

解决方案

解决方案二:
BS中不知道怎么弄?给你个思路,你可以遍历整个html,找a标签然后把href中内容和被包含的标签值(如百度)存为键值对,可以用正则实现。但是不知道BS读取html是不是要简单一些呢
解决方案三:
遍历html标签,然后用正则表达式去匹配a标签,提取文本为百度的a标签的href属性
解决方案四:
在C盘新建一个Txt,内容如下<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Default3.aspx.cs"Inherits="Default3"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><title></title></head><body><divid="show"><ahref="www.baidu.com">百度</a><ahref="www.sina.com">新浪</a><ahref="www.google.cn">谷歌</a><ahref="www.souhu.com">搜狐</a></div></body></html>

Dictionary<string,string>dicstr=newDictionary<string,string>();stringstrfromtxt=File.ReadAllText(@"C:1.txt",Encoding.GetEncoding("GB2312"));stringres=@"(?is)<as*href=""(?<href>([^>]*))""s*>(?<value>(.*?))</a>";MatchCollectionmatches=Regex.Matches(strfromtxt,res);foreach(Matchmatchinmatches){dicstr.Add(match.Groups["value"].Value.Trim(),match.Groups["href"].Value.Trim());//数据结果在dicstr}

解决方案五:
思路是有的,用正则取出<ahref="www.baidu.com">百度</a>,之后在根据a标签的文本在取出地址只是正则表达式不知道怎么写楼上的是取出a标签的所有属性
解决方案六:
stringsource=@"<ahref=""www.baidu.com"">百度</a>";Regexreg=newRegex(@"<ahref=""(?<web>[^""]+)"">百度");MatchCollectionmc=reg.Matches(source);foreach(Matchminmc){MessageBox.Show(m.Groups["web"].Value);}

解决方案七:
遍历html标签,然后用正则表达式去匹配a标签,提取文本为百度的a标签的href属性
解决方案八:
引用4楼yuhaichao928的回复:

思路是有的,用正则取出<ahref="www.baidu.com">百度</a>,之后在根据a标签的文本在取出地址只是正则表达式不知道怎么写楼上的是取出a标签的所有属性

dicstr中Key是百度,value是www.baidu.com,你先把代码试试
解决方案九:
webrequest对象可以获取网页源码,然后遍历查找字符串
解决方案十:
该回复于2012-03-20 13:39:58被版主删除
解决方案十一:
用jQuery可以么?$("a").each(function(){if($(this).html()=="百度"){alert($(this).attr("href"));}});

时间: 2024-10-04 17:54:54

C# 如何根据关键词获取html页面的超链接的相关文章

QQ空间新年关键词如何获取?2017开运关键词获取方法

每次过新年的时候,很多小伙伴都会在QQ空间发表自己的新年关键词,代表这新的一年新的气象.,那么,有朋友就在问2017开运关键词怎么获取呢?下面,小编给大家介绍下QQ空间我的2017开运关键词获取方法,一起来看看吧. QQ空间如何抽取新年关键词 1.打开QQ,进入好友动态,点击右上角+号 2.点击签到,进入签到页面,看到中间一栏获取我的2017开运关键词 3.进入页面,会获得自己的新年关键词哦!写上东西,进行发表就行~

jfinal如何获取html页面中&amp;amp;lt;image&amp;amp;gt;标签中src的值

问题描述 jfinal如何获取html页面中<image>标签中src的值 如何用JFinal在后台获取src中${imagePath!}这个值

jqueryui-关于前端JQ或JS获取别的页面传来的参数问题。

问题描述 关于前端JQ或JS获取别的页面传来的参数问题. 页面A向页面B 传递参数,可是页面A传递是用JQ的 ajax的Get请求,提交的参数没有在浏览器里面,例如?XXX=A&XXX=C这样子, ,所以页面B就不能用 var URL = document.location.toString(); 这样来获取了 求页面B该 怎么样写才能获取 ? 解决方案 首先你要明确一点, web 中两个页面的独立性是非常大的,里面的代码在两个独立的环境中解析运行,Chrome就干脆一个tab一个进程(基本上就

ASP获取当前页面带参数的网址(URL地址)的方法

ASP获取当前页面带参数的网址(URL地址)的方法 以下是引用片段:'=========================================== '获取当前Url参数的函数 Function GetUrl()   Dim ScriptAddress,Servername,qs   ScriptAddress = CStr(Request.ServerVariables("SCRIPT_NAME"))   Servername = CStr(Request.ServerVar

js获取当前页面路径示例讲解

 本篇文章主要是对js获取当前页面路径的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 设置或获取对象指定的"文件名"或路径. <script> alert(window.location.pathname) </script>   设置或获取整个 URL 为字符串. <script> alert(window.location.href);  </script>   设置或获取与 URL 关联的端口号码. <sc

iframe父页面获取子页面参数的方法

 这篇文章主要介绍了iframe父页面获取子页面参数的方法,需要的朋友可以参考下 1.父页面中的iframe  代码如下: <iframe name="parentPage"></iframe>    2.子页面中元素的属性   代码如下: <input type="text" id="date" data-dojo-type="dijit/form/DateTextBox" value=&quo

asp.net用户控件如何获取父页面的变量的值

问题描述 asp.net用户控件如何获取父页面的变量的值 <li <% if(top==""default""){ %>class=""home""<% } %> ><a href=""/default.aspx"">首页</a></li> 这是用户控件前端页面的代码,父页面的cs文件定义了一个全局的top 但是运行

php获取当前页面完整URL地址_php技巧

使用PHP编写程序的时候,我们常常想要获取当前页面的URL.下面提供一个用于获取当前页面URL的函数以及使用方法:示例一: <?php // 说明:获取完整URL function curPageURL() { $pageURL = 'http'; if ($_SERVER["HTTPS"] == "on") { $pageURL .= "s"; } $pageURL .= "://"; if ($_SERVER[&qu

checkbox-action中如何获取jsp页面append出来的标签值?

问题描述 action中如何获取jsp页面append出来的标签值? if($(""#byUserId"").is("":checked"")){ $.post(""message_findUserName""{userId:$(""#userId"").val()}function(data){ for(var i =0;i $("&q