asp.net小偷程序示例
来源:互联网 发布:证件照排版软件 编辑:程序博客网 时间:2024/04/27 17:31
WebRequest.Create的方法较高,下面就用这种方法来做,以采集yahoo音乐数据为例,最后提供采集结果约几w条数据.
一,思路。采集其实是很简单的事,主要是猎取内容后,数据的处理方式难点。按面向对象思想,我将采集的方法封装为一个公用的类中,供调用
二,代码:
以采集http://music.yahoo.com.cn/mp3list.php?cat=%C8%AB%B2%BF%C4%D0%B8%E8%CA%D6,为例。
public void GetPage()
{
string str=bll.GetPage(Url);
str=bll.GetList(str,Lstar.Trim().ToLower(),Listend.Trim().ToLower());//Lstar,Listend为开始和结束的代码
str=str.Replace("/"","");
str=str.Replace("’","");
string u=bll.getNewsContentUrl(str,"<a href=.*?target=_blank>");//用正则
u=u.Replace("<a href=","");
u=u.Replace("target=_blank>","");
string n=bll.getNewsContentUrl(str,"target=_blank>.*?</a>");
n=n.Replace("target=_blank>","");
n=n.Replace("</a>","");
string [] uu =u.Split ( new Char[] {’,’} );
string [] nn =n.Split ( new Char[] {’,’} );
for(int i=0;i<uu.Length-1;i++)
{
if(this.ck(uu[i])==false)
{
string sql="INSERT INTO gs_name (m_name,m_url,addtime) VALUES (’"+nn[i]+"’,’"+uu[i]
+"’,’"+DateTime.Now+"’)";
obj.SqlFunction(sql); //写入数据库
}
}
}
这样你就得到该页所有歌手名及url.同理得到其它页面内容,都入库
下面采该库中所有歌手的歌曲
ListText.Text="";
OleDbDataReader dr=obj.GetDataReader("select * from gs_name ");
while(dr.Read())
{
string mx_url=dr["m_url"].ToString(); //其中一个歌手的url
string str=bll.GetPage(mx_url);
str=bll.GetList(str,"连通速度".Trim().ToLower(),"热门歌手榜".Trim().ToLower());
str=str.Replace("/"","");
str=str.Replace("’","");
str=str.ToLower();
string u=bll.getNews(str,"来源网址:.*? 请注意:此内容可能受到版权保护");
u=u.Replace("来源网址:","");
u=u.Replace("请注意:此内容可能受到版权保护","");
string n=bll.getNews(str,"此内容可能受到版权保护>.*?</a>");
n=n.Replace("此内容可能受到版权保护>","");
n=n.Replace("</a>","");
string [] uu =u.Split ( new Char[] {’~’} );
string [] nn =n.Split ( new Char[] {’~’} );
for(int i=0;i<uu.Length-1;i++)
{
try
{
string sql="INSERT INTO gs_list (NAMEID,Title,url,addtime,isshow) VALUES
(’"+Convert.ToInt32(dr["NAMEID"].ToString())+"’,’"+nn[i]+"’,’"+uu[i]+"’,’"+DateTime.Now+"’,0)";
obj.SqlFunction(sql); //写入数据库
}
catch{}
}
}
dr.Close();
至此:所有歌曲都采完
我采所有男歌手和女歌手用的4个小时.有数据就好办了,你自己再处理一下:
比如查歌曲url,后缀为.mp3,格式设为mp3,为.rm,,,,
string InfoType="其它格式";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".mp3")>-1)InfoType="mp3";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".rm")>-1)InfoType="rm";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".wav")>-1)InfoType="wav";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".flash")>-1)InfoType="flash";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".swf")>-1)InfoType="swf";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".wma")>-1)InfoType="wma";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".mpeg")>-1)InfoType="mpeg";
if(ds.Tables["a"].Rows[i]["url"].ToString().IndexOf(".mid")>-1)InfoType="mid";
- asp.net小偷程序示例
- [ASP]小偷程序原理和简单示例
- 小偷程序(ASP.NET+c#)
- 三款小偷程序(ASP.NET)
- 小偷程序(ASP.NET+c#)
- 三款小偷程序(ASP.NET)
- 小偷程序(ASP.NET+c#)
- 三款小偷程序(ASP.NET)
- ASP.Net、C#实现网页小偷程序
- ASP.Net、C#实现网页小偷程序
- ASP.Net、C#实现网页小偷程序
- ASP实现小偷程序原理和简单示例
- ASP中实现小偷程序的原理和简单示例
- asp小偷程序原理
- ASP文章小偷程序
- 做ASP小偷程序
- 开发ASP.NET下的MP3小偷程序
- 开发ASP.NET下的MP3小偷程序
- IEInspector
- 人是如何认知的?
- .NET Framework 3.5 版中的新增功能(2)[整理]
- 如何识别真假UGG 5819
- DIV CSS网页布局实例:十步学会用CSS建站
- asp.net小偷程序示例
- UI界面设计闪烁问题的解决办法
- 一个microsoft的.exe程序文件的启动过程
- Java-InnerClass-01
- char**为何无法转为const char**?——对const的进一步探讨
- ugg5819羊毛靴,ugg三木扣羊毛线靴批发
- 脚踏实地,一步一个脚印
- 你是我生命的一首歌
- 一些常用JS脚本