使用 htmlagilitypack 从浏览器加载
load from browser with htmlagilitypack
目前,我正在尝试 运行 来自 htmlaglitypack 官方网站的示例,但此代码已损坏:http://html-agility-pack.net/from-browser
我想在脚本完成后提取内容。我的代码:
private void button1_Click(object sender, EventArgs e)
{
string url = "http://html-agility-pack/from-browser";
var web2 = new HtmlWeb();
var doc2 = web2.LoadFromBrowser(url, html =>
{
return !html.Contains("<div id=\"uiDynamicText\"></div>");
});
var t2 = doc2.DocumentNode.SelectSingleNode(".//div[@id='uiDynamicText']");
listBox1.Items.Add("Text 2: " + t2.InnerHtml + t2.OuterHtml);
}
t2
保持为空。有什么问题?
website 表示使用:
var t2 = doc2.DocumentNode.SelectSingleNode("//div[@id='uiDynamicText']").InnerText;
您正在使用不同的代码:
var t2 = doc2.DocumentNode.SelectSingleNode(".//div[@id='uiDynamicText']");
这解释了为什么使用您的代码,t2
是 null
。
HAP 代码也有错误 URL(缺少“.net”),因此代码应为
字符串 url = "https://html-agility-pack.net/from-browser";
目前,我正在尝试 运行 来自 htmlaglitypack 官方网站的示例,但此代码已损坏:http://html-agility-pack.net/from-browser
我想在脚本完成后提取内容。我的代码:
private void button1_Click(object sender, EventArgs e)
{
string url = "http://html-agility-pack/from-browser";
var web2 = new HtmlWeb();
var doc2 = web2.LoadFromBrowser(url, html =>
{
return !html.Contains("<div id=\"uiDynamicText\"></div>");
});
var t2 = doc2.DocumentNode.SelectSingleNode(".//div[@id='uiDynamicText']");
listBox1.Items.Add("Text 2: " + t2.InnerHtml + t2.OuterHtml);
}
t2
保持为空。有什么问题?
website 表示使用:
var t2 = doc2.DocumentNode.SelectSingleNode("//div[@id='uiDynamicText']").InnerText;
您正在使用不同的代码:
var t2 = doc2.DocumentNode.SelectSingleNode(".//div[@id='uiDynamicText']");
这解释了为什么使用您的代码,t2
是 null
。
HAP 代码也有错误 URL(缺少“.net”),因此代码应为 字符串 url = "https://html-agility-pack.net/from-browser";