3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊
你可以做很多事情,而不必堅(jiān)持第三方產(chǎn)品和mshtml(即互操作)。使用System.Windows.Forms.WebBrowser。從那里,您可以在HtmlDocument上執(zhí)行“GetElementById”或在HtmlElements上執(zhí)行“GetElementsByTagName”。如果你想與瀏覽器實(shí)際交互(例如模擬按鈕點(diǎn)擊),你可以使用一點(diǎn)反射(imo比Interop更小的邪惡)來做到這一點(diǎn):
var wb = new WebBrowser()
...告訴瀏覽器導(dǎo)航(與此問題相關(guān))。然后在Document_Completed事件上,您可以模擬這樣的點(diǎn)擊。
var doc = wb.Browser.Document
var elem = doc.GetElementById(elementId);
object obj = elem.DomElement;
System.Reflection.MethodInfo mi = obj.GetType().GetMethod("click");
mi.Invoke(obj, new object[0]);
你可以做類似的反思,提交表格等。
請享用。
- 3 回答
- 0 關(guān)注
- 670 瀏覽
添加回答
舉報(bào)