求获取百度音乐搜索结果列表的正则表达式, 本帖最后由 zc1992912 于 2012-12-26 17:08:30 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用HtmlAgilityPack比较方便,需要写的话可以短消息我。 无非就是处理下=<>"几个字符的转义,别的照样写,用.+来表示需要匹配的东西。很简单的。 string keyword = "在那桃花盛开的地方"; HtmlWeb htmlWeb = new HtmlWeb(); HtmlDocument htmlDoc = htmlWeb.Load(@"http://music.baidu.com/search?key=" + HttpUtility.UrlEncode(keyword)); HtmlNodeCollection lis = htmlDoc.DocumentNode.SelectNodes(@"//div[@id='result_container']/div/ul/li"); foreach (HtmlNode li in lis) { HtmlNode titleAnchor = li.SelectSingleNode(@"div/span[@class='song-title']/a[1]"); HtmlNode singerAnchor = li.SelectSingleNode(@"div/span[@class='singer']/span/a"); Response.Write(HttpUtility.HtmlEncode(titleAnchor.OuterHtml) + "<br/>" + HttpUtility.HtmlEncode(singerAnchor.OuterHtml)); Response.Write("<br/><br/>"); }以上在ASP.NET下运行通过,命令行或Winform下把输出语句改下、html编码去掉就行了,更简单。自己下载HtmlAgilityPack:参考:http://zhoufoxcn.blog.51cto.com/792419/595344http://blog.csdn.net/dalmeeme/article/details/7191793 自动填充网页表单 c# 设置 hook 钩子 问题 openFileDialog 为什么老是会记录下历史 项目用的Windows登录,注销如何做呢 HttpWebRequest post 的问题 在C#中查询INFORMIX数据库中的中文数据显示乱码,要怎么处理啊? 求教!!---列值不唯一的问题 庆祝今天下大雪,再问大家一个问题,3k油. 如何用C#实现桌面便条 C#里如何将多个XML文件合并成一个XML文件? 问个关于c#读取Excel后一个简单的问题 C# WinForm 运行水晶报表会自动关闭整个系统
HtmlWeb htmlWeb = new HtmlWeb();
HtmlDocument htmlDoc = htmlWeb.Load(@"http://music.baidu.com/search?key=" + HttpUtility.UrlEncode(keyword));
HtmlNodeCollection lis = htmlDoc.DocumentNode.SelectNodes(@"//div[@id='result_container']/div/ul/li");
foreach (HtmlNode li in lis)
{
HtmlNode titleAnchor = li.SelectSingleNode(@"div/span[@class='song-title']/a[1]");
HtmlNode singerAnchor = li.SelectSingleNode(@"div/span[@class='singer']/span/a");
Response.Write(HttpUtility.HtmlEncode(titleAnchor.OuterHtml) + "<br/>" + HttpUtility.HtmlEncode(singerAnchor.OuterHtml));
Response.Write("<br/><br/>");
}
以上在ASP.NET下运行通过,命令行或Winform下把输出语句改下、html编码去掉就行了,更简单。
自己下载HtmlAgilityPack:参考:
http://zhoufoxcn.blog.51cto.com/792419/595344http://blog.csdn.net/dalmeeme/article/details/7191793