获取某地址下的文章内容 大家好, 我想要一个程序,可以根据指定的url,比如www.baidu.com获取到这个地址下的文章标题、文章正文、图片列表(URL)请问有现成的开源项目吗,需要C#开发的,烦请给一个链接,谢谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.cnblogs.com/yiki/archive/2007/08/28/872528.html HttpWebRequest或者WebClient public class GetWeb { private string webContext; public string WebContext { get { return webContext; } set { webContext = value; } } private string url; public string Url { get { return url; } set { url = value; } } //得到页面的所有类容 public void GetHttpWeb() { HttpWebRequest request = HttpWebRequest.Create(this.url) as HttpWebRequest; HttpWebResponse response = request.GetResponse() as HttpWebResponse; Stream stream = response.GetResponseStream(); MemoryStream memory = new MemoryStream(); Byte[] buff = new Byte[4096]; int i = 0; while ((i = stream.Read(buff, 0, buff.Length)) > 0) { memory.Write(buff, 0, i); } memory.Close(); webContext = Encoding.GetEncoding(response.CharacterSet).GetString(memory.GetBuffer()); } } public class WebDataContext { //保存页面的所有Image URL private List<string> images; public List<string> Images { get { return images; } set { images = value; } } //保存连接 private List<string> users; public List<string> Users { get { return users; } set { users = value; } } public WebDataContext() { images = new List<string>(); users = new List<string>(); } }/// <summary> /// 匹配图片URL和链接的URL /// </summary> /// <param name="text"></param> /// <returns></returns> public WebDataContext getWebDataContext(string text,string imgesreg,string usersreg) { WebDataContext data = new WebDataContext(); Regex regImg = new Regex(imgesreg, RegexOptions.IgnoreCase); MatchCollection matches = regImg.Matches(text); foreach (Match item in matches) { data.Images.Add(item.Value); } Regex reguser = new Regex(usersreg,RegexOptions.IgnoreCase); MatchCollection matcheuser = reguser.Matches(text); foreach (Match item in matcheuser) { data.Users.Add(item.Value); } return data; }//传入你要匹配的正则表达式。 这种API的地址怎么引用,怎么调用? 在windForm中如何使GridView行变色 清除session cookie 自定义按钮控件使用委托让它的单击事件的处理方法调用控件外部的方法 用C#.net做聊天室好还是用ASP做比较好?(我没分给了,谢谢。。) VS2005里,通过系统向导建立*.xsd那种访问数据库的方式算不算ORM的一种实现? c#调用excel问题! 关于指示灯 数据库问题?请指教 文本在网页中中显示的转换问题 怎么用axWindowsMediaPlayer控件播放在resources中的文件呢? WinForm中的App.config文件?
或者
WebClient
{
private string webContext; public string WebContext
{
get { return webContext; }
set { webContext = value; }
}
private string url; public string Url
{
get { return url; }
set { url = value; }
} //得到页面的所有类容
public void GetHttpWeb()
{
HttpWebRequest request = HttpWebRequest.Create(this.url) as HttpWebRequest;
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Stream stream = response.GetResponseStream();
MemoryStream memory = new MemoryStream();
Byte[] buff = new Byte[4096];
int i = 0;
while ((i = stream.Read(buff, 0, buff.Length)) > 0)
{
memory.Write(buff, 0, i); }
memory.Close();
webContext = Encoding.GetEncoding(response.CharacterSet).GetString(memory.GetBuffer());
}
}
public class WebDataContext
{
//保存页面的所有Image URL
private List<string> images;
public List<string> Images
{
get { return images; }
set { images = value; }
}
//保存连接
private List<string> users; public List<string> Users
{
get { return users; }
set { users = value; }
}
public WebDataContext()
{
images = new List<string>();
users = new List<string>();
}
}
/// <summary>
/// 匹配图片URL和链接的URL
/// </summary>
/// <param name="text"></param>
/// <returns></returns>
public WebDataContext getWebDataContext(string text,string imgesreg,string usersreg)
{
WebDataContext data = new WebDataContext();
Regex regImg = new Regex(imgesreg, RegexOptions.IgnoreCase);
MatchCollection matches = regImg.Matches(text); foreach (Match item in matches)
{
data.Images.Add(item.Value);
}
Regex reguser = new Regex(usersreg,RegexOptions.IgnoreCase);
MatchCollection matcheuser = reguser.Matches(text);
foreach (Match item in matcheuser)
{
data.Users.Add(item.Value);
}
return data;
}
//传入你要匹配的正则表达式。