学习WebClient类 及Match.Groups 属性 保存网页所有超链接到本地
2012-06-04 18:16
246 查看
WebClient类
提供用于将数据发送到由 URI 标识的资源及从这样的资源接收数据的常用方法。
——命名空间: System.Net
——WebClient 构造函数
初始化 WebClient 类的新实例。
——WebClient.Encoding 属性
获取和设置用于上载和下载字符串的 Encoding。
——常用方法
1, WebClient.DownloadData(String)
以Byte 数组形式通过指定的 URI 下载资源。
-语法
public byte[] DownloadData( string address)
-参数
address
类型:System.String
从中下载数据的 URI。
-返回值
类型:System.Byte[]
一个 Byte 数组,其中包含下载的资源。
2,WebClient.DownloadFile 方法 (String, String)
将具有指定 URI 的资源下载到本地文件。
-语法
public void DownloadFile(
string address,
string fileName
)
-参数
address
类型:System.String
从中下载数据的 URI。
fileName
类型:System.String
要接收数据的本地文件的名称。
3,WebClient.DownloadString 方法 (String)
以 String 形式下载请求的资源。 以包含 URI 的 String 的形式指定要下载的资源。
-语法
public string DownloadString(
string address
)
-参数
address
类型:System.String
包含要下载的 URI 的 String。
-返回值
类型:System.String
一个 String,其中包含请求的资源。
以下代码段实现功能,截取网页hao123上的超链接,并保存成文本:
static void Main(string[] args)
{
string addre = "http://www.hao123.com";
WebClient wc = new WebClient();
string html = wc.DownloadString(addre); //获取所有内容到字符串 html中
string reg = @"href=""(http://.+?)"""; //正则表达式,得到类似 <a href="http://caipiao.hao123.com/">的内容,加括号后实现分组功能
MatchCollection mc = Regex.Matches(html, reg);
foreach (Match item in mc)
{
File.AppendAllText(@"f:\httpAddre4.txt", (item.Groups[1].Value) + "\r\n");//通过正则表达式
//加括号分组,把mc的值筛选后 得到http://caipiao.hao123.com/
//放到文本文件中。
}
简单说下Groups
Match.Groups 属性
获取由正则表达式匹配的组的集合。
语法:
public virtual GroupCollection Groups { get; }
属性值
类型:System.Text.RegularExpressions.GroupCollection
由模式匹配的字符组。
具体说明:正则表达式模式可以包含子表达式,这些子表达式是通过将正则表达式模式的一部分用括号括起来定义的。 每个这样的子表达式构成一个组。 例如,与北美电话号码匹配的正则表达式模式 (\d{3})-(\d{3}-\d{4}) 有两个子表达式。 第一组由区号构成,它包含电话号码的前三位数字。 此组由正则表达式的第一部分 (\d{3}) 捕获。第二组由单个电话号码组成,它包含电话号码的后七位数字。 此组由正则表达式的第二部分 (\d{3}-\d{4}) 捕获。
提供用于将数据发送到由 URI 标识的资源及从这样的资源接收数据的常用方法。
——命名空间: System.Net
——WebClient 构造函数
初始化 WebClient 类的新实例。
——WebClient.Encoding 属性
获取和设置用于上载和下载字符串的 Encoding。
——常用方法
1, WebClient.DownloadData(String)
以Byte 数组形式通过指定的 URI 下载资源。
-语法
public byte[] DownloadData( string address)
-参数
address
类型:System.String
从中下载数据的 URI。
-返回值
类型:System.Byte[]
一个 Byte 数组,其中包含下载的资源。
2,WebClient.DownloadFile 方法 (String, String)
将具有指定 URI 的资源下载到本地文件。
-语法
public void DownloadFile(
string address,
string fileName
)
-参数
address
类型:System.String
从中下载数据的 URI。
fileName
类型:System.String
要接收数据的本地文件的名称。
3,WebClient.DownloadString 方法 (String)
以 String 形式下载请求的资源。 以包含 URI 的 String 的形式指定要下载的资源。
-语法
public string DownloadString(
string address
)
-参数
address
类型:System.String
包含要下载的 URI 的 String。
-返回值
类型:System.String
一个 String,其中包含请求的资源。
以下代码段实现功能,截取网页hao123上的超链接,并保存成文本:
static void Main(string[] args)
{
string addre = "http://www.hao123.com";
WebClient wc = new WebClient();
string html = wc.DownloadString(addre); //获取所有内容到字符串 html中
string reg = @"href=""(http://.+?)"""; //正则表达式,得到类似 <a href="http://caipiao.hao123.com/">的内容,加括号后实现分组功能
MatchCollection mc = Regex.Matches(html, reg);
foreach (Match item in mc)
{
File.AppendAllText(@"f:\httpAddre4.txt", (item.Groups[1].Value) + "\r\n");//通过正则表达式
//加括号分组,把mc的值筛选后 得到http://caipiao.hao123.com/
//放到文本文件中。
}
简单说下Groups
Match.Groups 属性
获取由正则表达式匹配的组的集合。
语法:
public virtual GroupCollection Groups { get; }
属性值
类型:System.Text.RegularExpressions.GroupCollection
由模式匹配的字符组。
具体说明:正则表达式模式可以包含子表达式,这些子表达式是通过将正则表达式模式的一部分用括号括起来定义的。 每个这样的子表达式构成一个组。 例如,与北美电话号码匹配的正则表达式模式 (\d{3})-(\d{3}-\d{4}) 有两个子表达式。 第一组由区号构成,它包含电话号码的前三位数字。 此组由正则表达式的第一部分 (\d{3}) 捕获。第二组由单个电话号码组成,它包含电话号码的后七位数字。 此组由正则表达式的第二部分 (\d{3}-\d{4}) 捕获。
相关文章推荐
- Python学习笔记之爬取网页保存到本地文件
- [3]Python学习笔记---写一个Python程序把CSDN专栏的所有文章另存为本地网页
- python学习——爬下网站的所有图片并保存在本地
- 抓取源码爱好者所有网页特效例子并保存到本地
- python学习—保存网页到本地 html及pdf
- 保存网页文件目录中所有文件到本地
- ios学习: 用文件保存带属性字符串
- 用asp自动解析网页中的图片地址,并将其保存到本地服务器
- 使用httpClient保存网页至本地
- Python之BeautifulSoup学习之三 读取本地html文件,并将其中图片保存下来
- nodejs抓取网页的源码,并保存到本地文件
- CKEditor学习 | div的float属性 | margin:0px auto和text-align居中对齐的区别 | Fireworks网页切片 | ReportViewer的简单使用
- watir学习之—如何遍历页面所有的超链接
- JS/HTML 保存图片到本地:HTML <a> download 属性
- [python爬虫学习]1.爬取本地网页
- 截取部分网页以图片保存到本地
- iOS学习重要知识点整理01-Objective-C中@property的所有属性详解
- PHP保存网页HMTL到本地电脑
- 【知识积累】使用Httpclient实现网页的爬取并保存至本地