怎樣讀取Internet網頁的源文件?

怎樣讀取Internet網頁的源文件? 

2 樓inprises(何許)回覆於 2001-06-13 13:15:00 得分 29

方法1、  
  使用控件TWebBrowser控件瀏覽網頁你應該知道怎麼做了吧!我就不多說這個了。  
  在你的這個使用了控件TWebBrowser的工程中,選擇菜單‘Project’,選擇‘Import   Type   Library...’,然後選擇‘MicroSoft   HTML   Object   Library(Version   x.x)’,再install...(安裝過程會有點長)  
  之後會生成一個MSHTML_TLB.pas,這就作好了完全準備工作。接下來就簡單了:  
   
  在你的單元的uses部分加上   MSHTML_TLB,在程序的適當位置添加如下代碼:  
   
  var  
  xxxx:IHtmlDocument2;  
  begin  
      xxxx   :=   WebBrowser1.Document   as   IHtmlDocument2;//WebBrowser1爲你所用的TWebBrowser控件  
      //如果採用Memo1來顯示源代碼,則:  
      Memo1.Lines.Add(xxxx.Body.outHtml);  
  end;  
   
  方法2、  
  簡單一點,直接用控件THtml就可以了,不要告訴我控件的FastNet頁沒有這個控件,即使沒有,那肯定是你沒有裝。

--------------------------------------

幫幫忙!能否通過delphi的webbrowser控件讀取網頁的源文件信息。60送上!

樓主jmj83(我心如水,純而不靜)2000-10-25 10:06:00 在 Delphi / VCL組件開發及應用 提問

問題點數:110、回覆次數:10Top

1 樓kkk2000(肥牛)回覆於 2000-10-25 10:15:00 得分 0

得到網頁的源文件“信息”,你是指網頁的內容吧。如果非用webbrowser控件,你就等下載完畢後用它的ExeWB方法將頁面保存起來。如果只是要得到Html文檔的內容,用FastNet中的控件比較好。Top

2 樓kkk2000(肥牛)回覆於 2000-10-25 10:58:00 得分 0

不知你做什麼用。  
  如果只想看源文件,那你就等webbrowser下載一個頁面後,在它上面點鼠標右鍵,查看源文件即可。  
  或者可用用webbrowser1.ExeWB(OLECMDID_SAVECOPYAS,OLECMDEXECOPT_DODEFAULT)將網頁內容存在一個指定的地方。  
   
  要不你就別用webbrowser控件了,在FastNet中,有很多控件可以使用。  
  如:NMHttp,PowerSock控件。  
  一個簡單的例子。  
  procedure   TForm1.Button1Click(Sender:   TObject);  
  begin  
      try  
          nmhttp1.Get('www.sina.com.cn');//  
      finally  
          memo1.Text:=nmhttp1.Body;//memo1中將顯視出sina首頁的源文件。  
      end;  
  end;  
   
   
   
   
  Top

3 樓kkk2000(肥牛)回覆於 2000-10-25 11:11:00 得分 0

不知你做什麼用。  
  如果只想看源文件,那你就等webbrowser下載一個頁面後,在它上面點鼠標右鍵,查看源文件即可。  
  或者可用用webbrowser1.ExeWB(OLECMDID_SAVECOPYAS,OLECMDEXECOPT_DODEFAULT)將網頁內容存在一個指定的地方。  
   
  要不你就別用webbrowser控件了,在FastNet中,有很多控件可以使用。  
  如:NMHttp,PowerSock控件。  
  一個簡單的例子。  
  procedure   TForm1.Button1Click(Sender:   TObject);  
  begin  
      try  
          nmhttp1.Get('www.sina.com.cn');//  
      finally  
          memo1.Text:=nmhttp1.Body;//memo1中將顯視出sina首頁的源文件。  
      end;  
  end;  
   
  Top

4 樓huzi(鬍子)回覆於 2000-10-25 14:30:00 得分 0

哈哈,我也爲這個問題困擾了很長時間。  
  後來,朋友介紹了一個控件,一切OK。  
  該控件是   ICS,   你到網上去找,很多地方都有。  
  Top

5 樓kkk2000(肥牛)回覆於 2000-10-25 14:47:00 得分 0

方法1:直接在它上面點右鍵,選查看源文件。  
  2:用Webbrowser1.ExeWB(OLECMDID_SAVEAS,0);把頁面內容存到指定的位置。  
  3:不用Webborser,用Fastnet中的控件。  
    如:nmhttp,powersock....  
  try  
      nmhttp1.get('www.263.net');  
  finally  
      memo1.text:=nmhttp1.body;  
  end;  
   
  Top

6 樓kkk2000(肥牛)回覆於 2000-10-25 14:53:00 得分 100

方法1:直接在它上面點右鍵,選查看源文件。  
  2:用Webbrowser1.ExeWB(OLECMDID_SAVEAS,0);把頁面內容存到指定的位置。  
  3:不用Webborser,用Fastnet中的控件。  
    如:nmhttp,powersock....  
  try  
      nmhttp1.get('www.263.net');  
  finally  
      memo1.text:=nmhttp1.body;  
  end;  
  Top

7 樓alin()回覆於 2000-10-30 18:37:00 得分 10

html  
  webbrowser.OleObject.document.documentelement.innerhtml;  
  Text  
  webbrowser.OleObject.document.documentelement.innerText;Top

8 樓xiao_wen()回覆於 2001-07-12 11:35:08 得分 0

其實用webbrowser自己的屬性就夠了  
   
  var  
  doc   :   Variant;  
  begin  
  doc   :=   Webborwser1.document;  
  Memo.Text   :=   Doc.body.innerhtml(html   源碼);(innerhtml   取頁面所有的文字信息)  
  end;Top

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章