将你的QQ唠叨或QQ签名数据加入到博客上:)

时间:2022-04-05 14:18:27

这是一篇没有技术性的文章,只要你写过采集程序你就知道怎么做了将你的QQ唠叨或QQ签名数据加入到博客上:)

QQ唠叨是QQ滔滔的一个名词,也即是平时的杂言碎语.它可在WEB,QQ,QQ签名,手机短信上发表,具体的大家可去滔滔网站了解
http://www.taotao.com/

现在我们要实现的就是将QQ唠叨发表的言语"转"到我们的博客上显示,只要我们发表了一句言语,我们的博客就能实时显示,让我们的访问者都能知道自己最近在唠叨些啥,是不是很Cool啊?将你的QQ唠叨或QQ签名数据加入到博客上:)(效果可看我的博客标题头)

好了,不说了,直接贴代码:

将你的QQ唠叨或QQ签名数据加入到博客上:)<% @ Import Namespace = " System "   %>
将你的QQ唠叨或QQ签名数据加入到博客上:)
<% @ Import Namespace = " System.Net "   %>
将你的QQ唠叨或QQ签名数据加入到博客上:)
<% @ Import Namespace = " System.Text "   %>
将你的QQ唠叨或QQ签名数据加入到博客上:)
<% @ Import Namespace = " System.Text.RegularExpressions "   %>
将你的QQ唠叨或QQ签名数据加入到博客上:)
< script language = " C# "  runat = " server " >
将你的QQ唠叨或QQ签名数据加入到博客上:)    
protected   override   void  OnLoad(EventArgs e)
将你的QQ唠叨或QQ签名数据加入到博客上:)将你的QQ唠叨或QQ签名数据加入到博客上:)    
{
将你的QQ唠叨或QQ签名数据加入到博客上:)        
string qq = Request.QueryString["qq"];          //对应的QQ号码
将你的QQ唠叨或QQ签名数据加入到博客上:)
        string strNum = Request.QueryString["num"];        //对应的数据条数
将你的QQ唠叨或QQ签名数据加入到博客上:)
        if (string.IsNullOrEmpty(qq)) return;
将你的QQ唠叨或QQ签名数据加入到博客上:)        
int num;
将你的QQ唠叨或QQ签名数据加入到博客上:)        
将你的QQ唠叨或QQ签名数据加入到博客上:)        MatchCollection contents 
= null;
将你的QQ唠叨或QQ签名数据加入到博客上:)        
将你的QQ唠叨或QQ签名数据加入到博客上:)        
//读取缓存数据
将你的QQ唠叨或QQ签名数据加入到博客上:)
        string cacheKey = "TAOTAO_CACHE_CONTENTS_QQ_" + qq;
将你的QQ唠叨或QQ签名数据加入到博客上:)        contents 
= Cache[cacheKey] as MatchCollection;
将你的QQ唠叨或QQ签名数据加入到博客上:)
将你的QQ唠叨或QQ签名数据加入到博客上:)        
if (contents == null)
将你的QQ唠叨或QQ签名数据加入到博客上:)将你的QQ唠叨或QQ签名数据加入到博客上:)        
{
将你的QQ唠叨或QQ签名数据加入到博客上:)            
//从页面读取数据
将你的QQ唠叨或QQ签名数据加入到博客上:)
            string taotaoUrl = "http://www.taotao.com/v1/space/" + qq + "/t.1/p.1";         //获取淘淘签名数据的URL
将你的QQ唠叨或QQ签名数据加入到博客上:)
            string findPattern = @"<div class=[^>]+><p><span>(?<content>.*?)</span>\s*<a[^>]+>(?<time>[^<]+)</a>";   //搜索签名数据块的正则表达式
将你的QQ唠叨或QQ签名数据加入到博客上:)

将你的QQ唠叨或QQ签名数据加入到博客上:)            
using (WebClient client = new WebClient())
将你的QQ唠叨或QQ签名数据加入到博客上:)将你的QQ唠叨或QQ签名数据加入到博客上:)            
{
将你的QQ唠叨或QQ签名数据加入到博客上:)                client.Encoding 
= Encoding.UTF8;
将你的QQ唠叨或QQ签名数据加入到博客上:)                
string html = client.DownloadString(taotaoUrl);
将你的QQ唠叨或QQ签名数据加入到博客上:)                contents 
= Regex.Matches(html, findPattern, RegexOptions.IgnoreCase);
将你的QQ唠叨或QQ签名数据加入到博客上:)                
将你的QQ唠叨或QQ签名数据加入到博客上:)                
//缓存数据(一小时后失效)
将你的QQ唠叨或QQ签名数据加入到博客上:)
                Cache.Insert(cacheKey, contents, null, DateTime.Now.AddHours(1),TimeSpan.Zero);
将你的QQ唠叨或QQ签名数据加入到博客上:)            }

将你的QQ唠叨或QQ签名数据加入到博客上:)        }

将你的QQ唠叨或QQ签名数据加入到博客上:)        
将你的QQ唠叨或QQ签名数据加入到博客上:)        num 
= (int.TryParse(strNum, out num) ? Math.Min(num, contents.Count) : contents.Count);
将你的QQ唠叨或QQ签名数据加入到博客上:)
将你的QQ唠叨或QQ签名数据加入到博客上:)        
//输出数据
将你的QQ唠叨或QQ签名数据加入到博客上:)
        Response.Clear();
将你的QQ唠叨或QQ签名数据加入到博客上:)        Response.Buffer 
= true;
将你的QQ唠叨或QQ签名数据加入到博客上:)        
for (int i = 0; i < num; i++)
将你的QQ唠叨或QQ签名数据加入到博客上:)将你的QQ唠叨或QQ签名数据加入到博客上:)        
{
将你的QQ唠叨或QQ签名数据加入到博客上:)            Match m 
= contents[i];
将你的QQ唠叨或QQ签名数据加入到博客上:)            Response.Write(
"document.write('");
将你的QQ唠叨或QQ签名数据加入到博客上:)            Response.Write(m.Groups[
"content"].ToString().Replace("'""\\'"));
将你的QQ唠叨或QQ签名数据加入到博客上:)            Response.Write(
string.Format("[<font color=\"#FFFF00\">{0}</font>]", m.Groups["time"].ToString()));
将你的QQ唠叨或QQ签名数据加入到博客上:)            Response.Write(
"<br />");
将你的QQ唠叨或QQ签名数据加入到博客上:)            Response.Write(
"');");
将你的QQ唠叨或QQ签名数据加入到博客上:)        }

将你的QQ唠叨或QQ签名数据加入到博客上:)        Response.Flush();
将你的QQ唠叨或QQ签名数据加入到博客上:)    }

将你的QQ唠叨或QQ签名数据加入到博客上:)
</ script >
将你的QQ唠叨或QQ签名数据加入到博客上:)


将上面的代码,直接保存为一个.aspx文件(注意文件编码!一般是UTF-8),再将此文件传到您的服务器空间上,然后将地址连接到您的博客上即可.
注意:一般在博客里是要以脚本形式调用,如我在我博客头上加的代码则是:
最新QQ唠叨: <script src=" http://www.xxx.com/taotao.aspx?qq=QQ号码&num=1" charset="gb2312"></script>

注:博客园的页面编码是UTF-8,如果你的页面输出不是UTF-8编码,一定要在script里加入对应的页面编码,否则显示乱码!

再注:因为是采集,所以如果淘淘网站的页面格式更改了的话,你也要随时更新正则表达式。否则就取不到签名数据了:(