程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 建立自己的csdn知識管理庫(1)

建立自己的csdn知識管理庫(1)

編輯:Delphi

建立自己的csdn知識管理庫(1)

 csdn是這兩年我上來頻率最高的論壇,以前喜歡到大富翁。但是很多時候上來是為了搜索以前的帖子,解決在項目開發中的一些實際問題,搜獲不小。但是也有一個遺憾,就是csdn有時候訪問速度非常的慢,而且也沒有提供官方的離線浏覽器。所以就萌生的寫一個下載csdn帖子的軟件。然後把從csdn接收到的帖子放在自己的知識管理系統裡面,或者做成chm 這樣效率就高多了。

    再仔細一看 發覺csdn上面的所有帖子都是保存為XML的。這些就更方便了,下載下來後就可以放在數據庫裡面。或者做成Html文件。

http://community.csdn.Net/Expert/TopicVIEw1.ASP?id=

後面循環加上一個7位數的數字就可以得到一個帖子。

例如:http://community.csdn.Net/Expert/TopicVIEw1.ASP?id=2800001

多線程 循環就搞定. 為了以後訪問的速度, 可以1000條就建立一個目錄 ,也就是一個目錄只保存1000條。

   開始用.Net寫的一個winform,軟件 發覺速度下載有點慢。後來改為Delphi.部分代碼如下:

procedure TForm1.SavePage(strId: string; strDir: string);
begin
    try
        UrlDownloadToFile(nil, Pchar(Edit1.text+ strId), Pchar(strDir), 0, nil); //保存ur連接到一個文本文件
    except
    end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
    strDir: string;
    intStar:integer;
    intEnd:integer;
    i:integer;
    FileName:string;
begin
    try
        intStar:=strToInt(edit2.Text);
        intEnd:=strToint(edit3.text);
        Edit4.Text:=Copy(IntTostr(intStar),0,4);
        strDir:='E:\CSDNBBS\'+Edit4.Text ;
        createDir(strDir);
        dddd:=true;
        for i:=intStar to intEnd do
        begin
            if(i mod 1000)=0 then
            begin
              Edit4.Text:=Copy(IntTostr(i),0,4);
              strDir:='E:\CSDNBBS\'+Edit4.Text ;
              createDir(strDir);
            end;
            self.Refresh;
            if  dddd =false then
               break;
            Application.ProcessMessages;
            try
                FileName := strDir+'\' +IntTostr(i) + '.XML';
                SavePage(IntTostr(i), FileName);
                Edit2.text:=IntTostr(i);
            except
            end;
        end;
    except
    end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
     dddd:=false;
end;

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved