Webbrowser control C#WebBrowser主体为空
.Net版本4.5.2 加载返回302的页面时,浏览器控件确实加载重定向的URL,这可能是正确的。在Fiddler中检查调用结果时,服务器将返回整个正确的页面 现在,页面在很长一段时间内从未“完成”,但确实进入了“交互”状态,您应该能够与之交互,不是吗 当我查看WebBrowser的文档时,它不是空的,它没有内容,所以您不能访问Body或任何元素 结果被编码为-gzip。你必须用Fiddler解码才能看到它 如何使返回的HTML在Document属性中可用Webbrowser control C#WebBrowser主体为空,webbrowser-control,Webbrowser Control,.Net版本4.5.2 加载返回302的页面时,浏览器控件确实加载重定向的URL,这可能是正确的。在Fiddler中检查调用结果时,服务器将返回整个正确的页面 现在,页面在很长一段时间内从未“完成”,但确实进入了“交互”状态,您应该能够与之交互,不是吗 当我查看WebBrowser的文档时,它不是空的,它没有内容,所以您不能访问Body或任何元素 结果被编码为-gzip。你必须用Fiddler解码才能看到它 如何使返回的HTML在Document属性中可用 using (browser = ne
using (browser = new WebBrowser()) {
browser.ClientSize = new Size(800, 600);
browser.ScrollBarsEnabled = false;
browser.ScriptErrorsSuppressed = true;
System.Windows.Forms.HtmlDocument doc = null;
browser.Navigate(_url);
// Wait for control to load page
while (browser.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
if (browser.ReadyState == WebBrowserReadyState.Interactive && browser.Document != null)
{
// give some redering time..
Thread.CurrentThread.Join(500);
Application.DoEvents();
doc = browser.Document;
break;
}
}
var elements = browser.Document.GetElementsByTagName("INPUT");
foreach (HtmlElement element in elements)
{
if (element.Name.ToLower().Contains("theInputFieldName"))
{
element.InnerText = NewFieldContentsVariable;
}
//to get the text use : string value = element.GetAttribute("value");
//to set the text use : elemet.InnerText = "something";
}
...