亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

使用XMLDocment遍歷CSDN論壇帖子回復

2019-11-18 18:35:27
字體:
來源:轉載
供稿:網友
  使用xmlDocment遍歷CSDN論壇帖子回復
 
   一天在水園看到別人整理的水園語錄,就是把某人一個時間段在論壇參與的回復都整理在一塊,頓時感到心血來潮,自己何不也整一個,在必要的時候可以討好自己中意的MM,呵呵也可以多了解一些別人,何樂而不為啊  :)
   仔細研究了一下論壇的文件格式都是xml的,Delphi6不是自帶有一個XmlDocument控件嗎?可以很方便的對xml文件進行讀取,研究了幾篇相關的文章,自己就動手開始做起來,花了二個多小時基本搞定,唯一的缺陷就是速度有點慢,遍歷2000個帖子大概需要5分鐘左右,那為兄弟有時間可以幫忙給完善一下,例如做成多線程什么的,我實在是懶得改進了,呵呵,廢話少說,現貼出部分的代碼,主要完成對特定作者的回復進行搜索,其他通過設定關鍵字、論壇編號、時間段檢索大家可以自己完善。
 
主要代碼部分:
窗體上主要有4個文本框,一個memo控件和二個按扭
通過指定帖子起始編號、結束編號和作者名稱,點“search”按扭,就可以將結果顯示到memo框中。
 
unit XmlDocSearch;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, xmldom, XMLIntf, msxmldom, XMLDoc, ComCtrls;
const
 url='http://expert.csdn.net/Expert/topic/';
type
  TFormTest = class(TForm)
    MemoOutput: TMemo;
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Button2: TButton;
    XMLDoc: TXMLDocument;
    PRocedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
 
  private
    { Private declarations }
      StartID,EndID :LongInt;
      KeyWord,Author :string;
  public
    { Public declarations }
  end;
 
var
  FormTest: TFormTest;
 
implementation
 
uses SearchThread;
 
{$R *.dfm}
 
procedure TFormTest.Button1Click(Sender: TObject);
 
顯示格式:
{# # # 搜索范圍:489000--493000# # #
帖子ID:489353
回復者:傻傻貓
回復時間:2002-1-21 10:48:45
內容:
 
等一下吧。我發個短消息問她
# # # # # # # # # # # # # # # # # # # # # # # #
}
var
  Root,CurNode,ChildNode :IXMLNode;   //根結點,當前節點,子節點
  sStr, sStrReturn: String;
  TopicID,ReplyName,ReplyNickName,ReplyTime,ReplyContent :string;
  //主題編號,回復人名稱,回復人呢稱,回復時間,回復內容
  CurUrl :PChar;
  dtr,dts,dte : TDateTime; 
  min : double;  
  CurID :integer;  //當前編號
begin
  dts :=now;   //開始時間
  StartID :=strtoint(edit3.Text);
  EndID :=strtoint(edit4.Text);
  KeyWord :=trim(edit1.Text);
  Author :=trim(edit2.Text);
  MemoOutput.Clear;
  sStrReturn := Chr(13) + Chr(10);
  sStr :='# # # 搜索范圍:'+inttostr(StartID)+'--'+inttostr(EndID)+'# # #'+sStrReturn+sStrReturn;
  MemoOutput.SetSelTextBuf(PChar(sStr));
 
  for CurID:=StartID to EndID do
  begin
    TopicID :=inttostr(CurID);
    CurUrl :=PChar(Url+copy(TopicID,1,length(TopicID)-3)+'/'+TopicID+'.xml');
    xmldoc.LoadFromFile(CurUrl);
    xmldoc.Active :=true;
    Root :=xmldoc.DocumentElement;  //取XML文件的根結點,即Topic
CurNode :=Root.ChildNodes['Replys'];   //使當前節點指向第二個子節點Replys
    CurNode :=CurNode.ChildNodes.First; //使當前節點指向Replys節點的第一個子節點信息
      while (CurNode<>nil) do    //循環讀取多個Reply信息
      begin
        if CurNode.ChildNodes['PostUserName'].Text =Author then
        begin
          ChildNode :=CurNode.ChildNodes.First ; //使ChildNode指向該Reply的第一個子節點信息
          while (ChildNode<>nil) do   //循環讀取Reply的各個子節點
          begin
            if (ChildNode.NodeName ='PostUserName') then
              ReplyName :=ChildNode.Text
            else if (ChildNode.NodeName ='PostUserNickName') then
              ReplyNickName :=ChildNode.Text
            else if (ChildNode.NodeName ='PostDateTime') then
              ReplyTime :=ChildNode.Text
             else if (ChildNode.NodeName ='Content') then
              ReplyContent :=trim(ChildNode.Text);
            ChildNode:=ChildNode.NextSibling ; //順序取下一個Reply的子節點信息
          end;
          sStr :='帖子ID:'+TopicID+sStrReturn;
          sStr :=sStr+'回復者:'+ReplyName+'('+ReplyNickName+')'+sStrReturn;
          sStr :=sStr+'回復時間:'+ReplyTime+sStrReturn;
          sStr :=sStr+'內容:'+sStrReturn+sStrReturn+ReplyContent+sStrReturn+sStrReturn;
          sStr :=sStr+'# # # # # # # # # # # # # # # # # # # # # # # #';
          sStr :=sStr+sStrReturn;
          MemoOutput.SetSelTextBuf(PChar(sStr));
        end;
        CurNode :=CurNode.NextSibling;  //順序取下一個Reply信息
      end;
    //  xmldoc.SaveToFile('./down/'+TopicID+'.xml');   //保存文件
  end;
  dte :=now;   //結束時間
  dtr :=dte-dts;
  min :=dtr*24*60*60;
  showmessage('總共使用了'+floattostr(min)+'秒!');
end;
 
procedure TFormTest.Button2Click(Sender: TObject);
begin
 close;
end;
 
end.

上一篇:通過原代碼學習TComponent類的機制(1)

下一篇:使用ClientSocket控件實現CSDN論壇帖子的自動回復

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线精品国产成人综合| 国产精品一区二区av影院萌芽| 久久久91精品国产一区不卡| 最近2019年好看中文字幕视频| 国产日产欧美a一级在线| 欧美色图在线视频| 九九久久精品一区| 亚洲а∨天堂久久精品9966| 国产成人精品日本亚洲| 久久成年人视频| 亚洲成人教育av| 久久天天躁夜夜躁狠狠躁2022| 国产欧美在线播放| 中文欧美在线视频| 欧美一级片久久久久久久| 色小说视频一区| 欧美日韩在线影院| 欧美日韩国产精品一区二区不卡中文| 91久久精品日日躁夜夜躁国产| 国产在线精品成人一区二区三区| 日韩激情在线视频| 精品国产老师黑色丝袜高跟鞋| 日韩在线观看网站| 久久精品国产精品亚洲| 日韩福利视频在线观看| 尤物九九久久国产精品的特点| 国产精品扒开腿做爽爽爽的视频| 国产精品视频自在线| 国产剧情日韩欧美| 国产午夜精品一区理论片飘花| 久久久久在线观看| 久久99亚洲热视| 久久久久久久久综合| 国产深夜精品福利| 国产精品久久久久久久久久久新郎| 久久躁日日躁aaaaxxxx| 欧美—级a级欧美特级ar全黄| 尤物九九久久国产精品的分类| 国产欧美在线观看| 日韩av网站在线| 国产精品黄页免费高清在线观看| 中文字幕一区日韩电影| 欧美大片在线看| 51精品国产黑色丝袜高跟鞋| 欧美第一页在线| 国产精品男人的天堂| 高跟丝袜欧美一区| 国产精品r级在线| 不卡在线观看电视剧完整版| 日本电影亚洲天堂| 久久这里只有精品99| 亚洲在线免费观看| 在线观看免费高清视频97| 俺去了亚洲欧美日韩| 91国在线精品国内播放| 亚洲欧洲国产一区| 午夜欧美大片免费观看| 亚洲男人av在线| 91精品国产乱码久久久久久蜜臀| 欧美与欧洲交xxxx免费观看| 日本一区二区三区四区视频| 欧美成人午夜激情视频| 久久精品99国产精品酒店日本| 国产精品专区一| 日韩中文理论片| 久久精品人人做人人爽| 91欧美精品午夜性色福利在线| 97色在线视频观看| 久久这里有精品视频| 性欧美xxxx视频在线观看| 久久国产精品网站| 国产91亚洲精品| 欧美激情欧美激情在线五月| 亚洲欧美国产精品专区久久| 国产精品久久久久久久久久久久久久| 欧美性生交大片免费| 国产精品精品视频| 久久久久久网站| 一区二区三区视频免费在线观看| 久久九九精品99国产精品| 国产乱肥老妇国产一区二| 91香蕉嫩草神马影院在线观看| 亚洲国产欧美一区二区三区久久| 欧美自拍视频在线观看| 日韩欧美国产骚| 丝袜亚洲另类欧美重口| 国产亚洲美女久久| 一夜七次郎国产精品亚洲| 亚洲精选一区二区| 国产视频精品在线| 北条麻妃一区二区三区中文字幕| 欧美老女人xx| 中文字幕在线精品| 国产成人亚洲综合91精品| 国产免费一区二区三区在线观看| 国产伦精品免费视频| 日韩视频在线一区| 日韩视频免费中文字幕| 国产香蕉精品视频一区二区三区| 国自产精品手机在线观看视频| 欧美亚洲日本网站| 久久久久免费视频| 亚洲天堂av综合网| 久久91精品国产91久久跳| 在线性视频日韩欧美| 精品成人国产在线观看男人呻吟| 96sao精品视频在线观看| 亚洲人成电影网站色xx| 国产999视频| 亚洲第一页中文字幕| 国产精品99久久久久久www| 久久精品99久久久香蕉| 国产综合在线观看视频| 久久人人爽人人爽人人片av高清| 日韩在线免费视频| 精品久久久久人成| 国产小视频91| 久久人人看视频| 国产精品自产拍在线观看中文| 欧美巨乳在线观看| 亚洲国产精品电影在线观看| www日韩欧美| 日韩经典中文字幕| 亚洲欧美在线第一页| 色噜噜久久综合伊人一本| 51视频国产精品一区二区| 一区二区欧美亚洲| 91中文在线观看| 久久精品欧美视频| 色妞色视频一区二区三区四区| 久久久国产精彩视频美女艺术照福利| 在线视频日本亚洲性| 国产一区二区三区四区福利| 欧美精品亚州精品| 91香蕉国产在线观看| 日本sm极度另类视频| 国产精品久久久久久久电影| 欧美中文字幕精品| 日韩影视在线观看| 国产偷国产偷亚洲清高网站| 日本国产一区二区三区| 欧美xxxx做受欧美.88| 欧美激情第1页| 亚洲精品成人久久久| 欧美性xxxxxxxxx| 97精品一区二区三区| 久久精品电影一区二区| 亚洲精品理论电影| 国产精品揄拍500视频| 亚洲爱爱爱爱爱| 亚洲激情在线视频| 91精品国产色综合久久不卡98口| 亚洲电影免费观看高清| 欧美精品在线视频观看| 2021久久精品国产99国产精品| 欧美一区二区三区……| 中国人与牲禽动交精品| xvideos亚洲| 国产精品男人的天堂| 亚洲国产成人精品一区二区| 国产成人精品日本亚洲专区61| 国产精品观看在线亚洲人成网| 欧美激情一区二区三区成人| 成人欧美一区二区三区黑人孕妇|