C# 提取网页的超链接

<div id="pro_down">
<div class="topic"></div>
<div class="tit">日期</div>
<div class="tit">下载次数</div>
<div class="clear"></div>
<div class="cnt">
<ul>
<li class="pic"></li>
<li class="name"><a href="program_download-431.html" title="节目下载" target="_blank">2009.06.20</a></li>
<li class="num">84,640</li>
</ul>
<ul>
<li class="pic"></li>
<li class="name"><a href="program_download-461.html" title="节目下载" target="_blank">2009.09.27</a></li>
<li class="num">56,697</li>
</ul>
...

这是网页的源码的一部分,我想把那个超链接和日期和日期提取出来,然后放到checkedlistbox 或者其他的容器中...
linzhou0207
怎样遍历整个网页的源文件

string regexStr = @"<a([^<]*)</a>";
Match mc = Regex.Match(richTextBox1.Text.Replace("\n", ""), regexStr, RegexOptions.IgnoreCase);

使用正则表达式。
把所有以<a开头以</ a>结束的全都提取出来。
这样你可以得到一个集合。
然后再使用字符串的相关操作把这个集合的每个条目里面的对应的有用的信息提取出来。

遍历源文件:
使用HttpWebRequest和HttpWebResponse类。
这两个类可以帮你把某个URL标识的网页以流或者字符串的形式读到内存里面。
也就是说一张网页就是一个字符串。
这个字符串里面包含你所需要的信息。
你使用正则表达式和字符串操作就可以提取出来。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-12-10
把名称和链接分成2列,添加到datatable中,然后用控件绑定就行了
第2个回答  2009-12-10
还是用datagrid或gridview绑定吧,效果很好!
第3个回答  2009-12-17
\<a\shref=["'](?<temp1>program_download-\d+\.html)["']\stitle=.*?target=\"_blank\"\>(?<temp2>\d{4}\.\d{2}\.\d+)\<\/a\>

${temp1}
${temp2}
希望对您有点用。

C# 提取网页的超链接
使用HttpWebRequest和HttpWebResponse类。这两个类可以帮你把某个URL标识的网页以流或者字符串的形式读到内存里面。也就是说一张网页就是一个字符串。这个字符串里面包含你所需要的信息。你使用正则表达式和字符串操作就可以提取出来。

用C#如何得到网页上的超链接?
如果你是用的datagrid或者dataview这种控件.你就把该列设置成模版列,然后模版里面放linkbutton等超链接控件,然后把linkbutton显示的东西从数据库绑定出来.如果你不设置成模版列,可能绑定出来的字段值是普通文本,这时你可以在前台页面中处理一下< >,把普通文本加上超链接地址....

高手进c# webBrowser获得网页上看到的超链接文本
string s=webbrowser1.DocumentText;这个就是获取当前所显示的网页的HTML了 但是注意一个问题,如果说网页没有加载完毕的话,这么获取是获取不到的。所以应该在加载完毕事件触发之后再去获取。

用C#怎么提取a标签的超链接?
string reg = @"]*href=([""'])?(?<href>[^'""]+)\\1[^>]*>";var item = Regex.Match(str, reg, RegexOptions.IgnoreCase);Console.WriteLine(item.Groups["href"].Value);第二种使用htmlagilitypack的xpath进行提取 HtmlNodeCollection atts = _doc.DocumentNode.SelectNodes...

C#控制台应用程序如何爬取网页超链接的源代码
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http:\/\/localhost:5983\/Default.aspx");request.Method = "POST";using (WebResponse response = request.GetResponse()){using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8)){string message =...

c# 获取网页中图片的超链接地址
string str = "";Regex rg = new Regex(@"

Asp.net中如何将显示出来的URL地址转换为超链接?(使用C#实现)
这个简单,用正则表达式就可以了引用命名空间:using System.Text.RegularExpressions;string strContent = “这是测试 http:\/\/www.test.com";\/\/超级链识别Regex urlregex = new Regex(@"( http:\\\/\\\/([\\w.]+\\\/?)\\S*)",RegexOptions.IgnoreCase| RegexOptions.Compiled);strContent = urlregex....

c#自编浏览器中超链接求解决!!
private void webBrowser1_DocumentCompleted(object sender,WebBrowserDocumentCompletedEventArgs e) { \/\/将所有的链接的目标,指向本窗体 foreach (HtmlElement archor in this.webBrowser1.Document.Links) { archor.SetAttribute("target", "_self"); } \/\/将所有的FORM的提交目...

C#如何使用正则表达式提取超链接中的文字部分?就是文字部分中间的文字...
string html = 要匹配的字符串;Regex reg = new Regex(@"]*>([\\s\\S]+?)", RegexOptions.IgnoreCase);Match m = reg.Match(html);while(m.IsSuccess){ string innerHTML = m.Result("$1");\/\/ 得到正则的括号里的内容,就是a的innerHTML innerHTML = Regex.Replace(innerHTML, @"<[^...

...就是将文本中的网址显示的效果是超链接,点击可以打开对应的网站_百 ...
你所说的是在winform窗体中还是asp.net中呢?如果是在asp.net中则可以使用:加一个连接标签内容 这样就可以实现你想要的效果了

相似回答