利用WebBrowser读取网页中表格的数据文档格式.docx
《利用WebBrowser读取网页中表格的数据文档格式.docx》由会员分享,可在线阅读,更多相关《利用WebBrowser读取网页中表格的数据文档格式.docx(5页珍藏版)》请在冰豆网上搜索。
![利用WebBrowser读取网页中表格的数据文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/29/c0e17f8b-9742-4713-b73a-3e02bfae0ee7/c0e17f8b-9742-4713-b73a-3e02bfae0ee71.gif)
TButton;
WebBrowser1:
TWebBrowser;
procedureFormCreate(Sender:
TObject);
procedureButton1Click(Sender:
private
{Privatedeclarations}
public
{Publicdeclarations}
end;
var
Form1:
TForm1;
implementation{$R*.dfm}function
GetHtmlTableCell(aTable:
IHTMLTable;
aRow,aCol:
Integer):
IHTMLElement;
Row:
IHTMLTableRow;
begin
Result:
=nil;
ifaTable=nilthenExit;
ifaTable.rows=nilthenExit;
Row:
=aTable.rows.item(aRow,aRow)as
IHTMLTableRow;
ifRow=nilthenExit;
=Row.cells.item(aCol,aCol)asIHTMLElement;
functionGetHtmlTable(aDoc:
IHTMLDocument2;
aIndex:
Integer):
list:
IHTMLElementCollection;
ifaDoc=nilthenExit;
ifaDoc.all=nilthenExit;
list:
=aDoc.all.tags('
table'
)asIHTMLElementCollection;
iflist=nilthenExit;
=list.item(aIndex,aIndex)asIHTMLTable;
functionGetWebBrowserHtmlTableCellText(const
AWebBrowser:
constTableIndex,RowIndex,ColIndex:
Integer;
varResValue:
string):
Boolean;
Docintf:
tblintf:
node:
ResValue:
='
'
docintf:
=AWebBrowser.Documentas
IHTMLDocument2;
tblintf:
=GetHtmlTable(docintf,TableIndex);
node:
=GetHtmlTableCell(tblintf,RowIndex,ColIndex);
=node&
lt;
&
gt;
nil;
ifResultthen
=Trim(node.innerText);
functionGetHtmlTableRowHtml(aTable:
aRow:
=RowasIHTMLElement;
functionGetWebBrowserHtmlTableCellHtml(const
;
=Trim(node.innerHTML);
functionGeHtmlTableHtml(aTable:
functionGetWebBrowserHtmlTableHtml(const
constTableIndex,RowIndex:
=GeHtmlTableHtml(tblintf,RowIndex);
=node.innerHtml;
procedureTForm1.FormCreate(Sender:
WebBrowser1.Navigate('
H:
\ReadTable\00.html'
);
procedureTForm1.Button1Click(Sender:
ResValue:
string;
ifGetWebBrowserHtmlTableCellText(WebBrowser1,0,0,0,ResValue)then
ShowMessage(ResValue);
endelse
ShowMessage('
指定的表格不存在'
end.