ASP.net(C#)从其他网站抓取内容并截取有用信息的实现代码
程序员文章站
2024-03-06 18:27:26
1. 需要引用的类库 复制代码 代码如下: using system.net; using system.io; using system.text; using syst...
1. 需要引用的类库
using system.net;
using system.io;
using system.text;
using system.text.regularexpressions;
2. 获取其他网站网页内容的关键代码
webrequest request = webrequest.create("http://目标网址.com/");
webresponse response = request.getresponse();
streamreader reader = new streamreader(response.getresponsestream(), encoding.getencoding("gb2312"));
//reader.readtoend() 表示取得网页的源码
textbox1.text = reader.readtoend();
3. 获取其他网站网页源码之后通过{正则表达式}帅选有用信息
matchcollection titlematchs = regex.matches(reader.readtoend(), @"发表评论</a></p></div><div class=""body"">([\s\s]*?)</div><div class=""share"">", regexoptions.ignorecase | regexoptions.multiline);
foreach (match nextmatch in titlematchs)
{
s += "<br>" + nextmatch.groups[1].value;
textbox1.text += "\n" + nextmatch.groups[1].value;
}
regexoptions.ignorecase: 表示不区分大小写, 一般网站源码大小写不敏感所以取消之.
regexoptions.multiline: 表示对多行内容进行帅选.
4. 大功告成
不上图了! 影响不好! 见谅见谅
复制代码 代码如下:
using system.net;
using system.io;
using system.text;
using system.text.regularexpressions;
2. 获取其他网站网页内容的关键代码
复制代码 代码如下:
webrequest request = webrequest.create("http://目标网址.com/");
webresponse response = request.getresponse();
streamreader reader = new streamreader(response.getresponsestream(), encoding.getencoding("gb2312"));
//reader.readtoend() 表示取得网页的源码
textbox1.text = reader.readtoend();
3. 获取其他网站网页源码之后通过{正则表达式}帅选有用信息
复制代码 代码如下:
matchcollection titlematchs = regex.matches(reader.readtoend(), @"发表评论</a></p></div><div class=""body"">([\s\s]*?)</div><div class=""share"">", regexoptions.ignorecase | regexoptions.multiline);
foreach (match nextmatch in titlematchs)
{
s += "<br>" + nextmatch.groups[1].value;
textbox1.text += "\n" + nextmatch.groups[1].value;
}
regexoptions.ignorecase: 表示不区分大小写, 一般网站源码大小写不敏感所以取消之.
regexoptions.multiline: 表示对多行内容进行帅选.
4. 大功告成
不上图了! 影响不好! 见谅见谅