我想在網站上獲取列和行中的數據,但是當我獲取數據時,它是垂直的,現在我必須在任何網站的表格中獲取數據辦法?HtmlAgilityPack從表中獲取數據
我有一個表:
<div>
<span id="ctl00_panelContent_ctl01_ucThongTinThiTruong_lblErr"></span>
</div>
<div>
<div id="ctl00_panelContent_ctl01_ucThongTinThiTruong_grdTT" class="RadGrid RadGrid_Office2007 rgMultiHeader" style="height:700px;width:100%;">
<div class="rgHeaderWrapper"><div id="ctl00_panelContent_ctl01_ucThongTinThiTruong_grdTT_GridHeader" class="rgHeaderDiv" style="padding-removed16px;overflow:hidden;">
<table class="rgMasterTable rgClipCells" border="0" id="ctl00_panelContent_ctl01_ucThongTinThiTruong_grdTT_ctl00_Header" style="width:100%;table-layout:fixed;overflow:hidden;empty-cells:show;">
<colgroup>
<col style="width:50px" />
<col style="width:70px" />
<col style="width:70px" />
<col style="width:70px;display:none;" />
<col style="width:70px;display:none;" />
<col style="width:70px;display:none;" />
<col style="width:110px" />
</colgroup>
<thead>
這是我的代碼:
var document = webBrowser1.Document;
var documentAsIHtmlDocument3 = (mshtml.IHTMLDocument3)document.DomDocument;
var htmlString = documentAsIHtmlDocument3.documentElement.innerHTML;
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(htmlString);
// string texts = doc.DocumentNode.SelectSingleNode("//div[@class='inner']/p").InnerText;
HtmlNodeCollection texts = doc.DocumentNode.SelectNodes("//table[@class='rgMasterTable rgClipCells']");
string kq = "";
if (texts != null)
{
foreach (var item in texts)
{
kq += item.InnerText + Environment.NewLine;
}
}
richTextBox1.Text = kq;
}
}
此代碼工作正常,但所獲得的數據是1垂直的,我想在網站上的數據,因爲他們做如何從網站
你有鏈接到你正在從中獲取數據的頁面嗎? –
它是內部網站應該有平等的訪問vpn – LongNgo08
你可以提供表格的HTML與一些實際的數據行? –