欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用C#正则表达式获取必应每日图片地址

程序员文章站 2023-11-30 10:05:10
 微软的bing搜索引擎首页每天都会提供了一些有趣的图片,下面使用正则表达式获取图片的地址,不管是在手机app还是在网站上都是很好的图片素材,而且每天更新,非常不...

 微软的bing搜索引擎首页每天都会提供了一些有趣的图片,下面使用正则表达式获取图片的地址,不管是在手机app还是在网站上都是很好的图片素材,而且每天更新,非常不错。

    首先访问微软的api,该地址返回的是xml文本,获取xml文本后使用正则表达式匹配url节点中的内容,加上必应主页链接即可获得图片的真实网址。下面是获取网址的全部代码。

string infourl = "http://cn.bing.com/hpimagearchive.aspx?idx=0&n=1";
httpwebrequest request = (httpwebrequest)webrequest.create(infourl);
request.method = "get"; request.contenttype = "text/html;charset=utf-8";
string xmlstring;
using (httpwebresponse response = (httpwebresponse)request.getresponse())
{
  stream myresponsestream = response.getresponsestream();
  using (streamreader mystreamreader = new streamreader(myresponsestream, encoding.utf8))
  {
    xmlstring = mystreamreader.readtoend();
  }
}
// 定义正则表达式用来匹配标签
regex regimg = new regex("<url>(?<imgurl>.*?)</url>", regexoptions.ignorecase);
// 搜索匹配的字符串
matchcollection matches = regimg.matches(xmlstring);
// 取得匹配项列表
string imageurl = "http://www.bing.com" + matches[0].groups["imgurl"].value;
background_image.src = imageurl;

以上所述是小编给大家介绍的使用c#正则表达式获取必应每日图片地址,希望对大家有所帮助