(ASP.NET)抓取网页内容


1、
MP3资源都在互联网上,有时听不了也是正常,但大多数不好用,真是用处不大了。仔细分析了一下它的源码,原来是读取目录下的1.xml,2.xml..4.xml文件。我经常在番茄花园听歌,也就是http://www.tomatolei.com,就想能不能把番茄的MP3资源放到这里来放呢?这不就是大家常说的MP3小偷的功能吗?说干就干! 

  1、分析一下番茄花园的歌来源: PageUrl = "http://tomatolei.com/bbs/T_playlist.asx";

  2、目标地址:1.xml

  3、用程序转换格式:

  前台:

<%@ Page language="c#" Codebehind="ReadAndWriteXml.aspx.cs" AutoEventWireup="false" Inherits="读取番茄花园的MP3.ReadAndWriteXml" validateRequest=false%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>读取番茄花园MP3列表</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form 符号) 
byte[] pagedata=wb.DownloadData(@url); 

//转换字符、 
string result=Encoding.Default.GetString(pagedata); 


txtBody.Text=result; 


4、字***.aspx的HTML代码中加入一条代码 

在第一行代码<%@ page=.............................%> 中加入validateRequest=false 

 

 

总结:整个代码不过才几行,而且还不用操心乱码的事情,我是昨天自己在帮助文档里偶然看见的,其实WebClient类有很多下载资源和上载资源的方法,有兴趣的朋友可以看看下面有关WebClient类的帮助文档: 

WebClient 类请参见 
WebClient 成员 | System.Net 命名空间 | WebRequest | WebResponse | HttpWebRequest | 

HttpWebResponse | WebClient 成员(Visual J# 语法) | C++ 托管扩展编程 
要求 
命名空间: System.Net 

平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP 

Professional, Windows Server 2003 系列 

程序集: System (在 System.dll 中) 

.NET Framework 安全性: 

WebPermission,用于访问所请求的 URI 或请求被重定向到的任何 URI。关联的枚举:Connect。 
语言 
C# 

C++ 

JScript 

Visual Basic 

全部显示 
提供向 URI 标识的资源发送数据和从 URI 标识的资源接收数据的公共方法。不能继承此类。 

有关此类型所有成员的列表,请参阅 WebClient 成员。 

System.Object 
System.MarshalByRefObject 
System.ComponentModel.Component 
System.Net.WebClient 

[Visual Basic] 
<ComVisible(True)> 
NotInheritable Public Class WebClient 
Inherits Component 

[C#] 
[ComVisible(true)] 
public sealed class WebClient : Component 

[C++] 
[ComVisible(true)] 
public __gc __sealed class WebClient : public Component 

[JScript] 
public 
ComVisible(true) 
class WebClient extends Component 

线程安全 
此类型的所有公共静态(Visual Basic 中为 Shared)成员对多线程操作而言都是安全的。但不保证任何实例 

成员是线程安全的。 

备注 
WebClient 类提供向 URI 标识的任何本地、Intranet 或 Internet 资源发送数据以及从这些资源接收数据的 

公共方法。 

WebClient 类使用 WebRequest 类提供对 Internet 资源的访问。WebClient 实例可以通过任何已向 

WebRequest.RegisterPrefix 方法注册的 WebRequest 子代访问数据。 

注意 默认情况下,.NET Framework 支持以 http:、https: 和 file: 方案标识符开头的 URI。 
WebClient 类提供四种将数据上载到资源的方法: 

OpenWrite 返回一个用于将数据发送到资源的 Stream。 
UploadData 将字节数组发送到资源并返回包含任何响应的字节数组。 
UploadFile 将本地文件发送到资源并返回包含任何响应的字节数组。 
UploadValues 将 NameValueCollection 发送到资源并返回包含任何响应的字节数组。 
WebClient 类还提供三种从资源下载数据的方法: 

DownloadData 从资源下载数据并返回字节数组。 
DownloadFile 从资源将数据下载到本地文件。 
OpenRead 从资源以 Stream 的形式返回数据。 
要求 
命名空间: System.Net 

平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP 

Professional, Windows Server 2003 系列 

程序集: System (在 System.dll 中) 

.NET Framework 安全性: 

WebPermission,用于访问所请求的 URI 或请求被重定向到的任何 URI。关联的枚举:Connect。

相关文章: