想要實作到一定時間自動登錄公司的內部OA,輸入用戶名和密碼,然后在頁面上點擊上班簽到或者下班簽退。
但我發現每次輸入用戶名和密碼這2步是沒有問題,但登錄進去后,執行最后一步點擊簽到按鈕時卻沒反應了,我想問題是不是出在,在登錄到另一外界面之后,要重新獲取一下頁面的資訊?這個要怎么做的?
HtmlElement btnSubmit = webBrowser1.Document.All["ImageButton1"];
HtmlElement tbUserid = webBrowser1.Document.All["Txt_username"];
HtmlElement tbPasswd = webBrowser1.Document.All["Txt_password"];
if (tbUserid == null || tbPasswd == null || btnSubmit == null) return;
tbUserid.SetAttribute("value", "用戶名");//輸入用戶名
tbPasswd.SetAttribute("value", "密碼");//輸入密碼
btnSubmit.InvokeMember("click");//點擊登錄
HtmlElement btnqt = webBrowser1.Document.All["btnQd"];
btnqt.InvokeMember("click");//點擊上班簽到
uj5u.com熱心網友回復:
登錄進去你還要等頁面加載完啊,登錄后直接獲取btnQd,dom都沒加載完獲取不到按鈕吧uj5u.com熱心網友回復:
寫個api 引數 用戶名 密碼 簽到/簽退, 多方便 何必模擬登陸呢uj5u.com熱心網友回復:
我也懷疑是沒加載完,或者是其它的什么問題,主要是要怎么做呢?
uj5u.com熱心網友回復:
你是登錄界面 要獲取另外一個界面的值嗎uj5u.com熱心網友回復:
怎么做?舉個例子,或者有類似的,給個鏈接
uj5u.com熱心網友回復:
想自動打卡啊你得 監控第二個界面是否全部加載完成 再點擊
uj5u.com熱心網友回復:
最簡單的方式是 sleep 10s 正常10s 應該界面全部都打開了uj5u.com熱心網友回復:
我明天試一下看,不過好像不太行,因為我在這之前用按鍵精靈試過,我試著讓它延遲幾秒再點擊,還是一樣的,后來用了Call Plugin.web.go(“簽到頁面”)打開了下頁面,然后后面的才繼續了,就是我不知道C#里面獲取頁面這些要用什么函式
uj5u.com熱心網友回復:
谷歌瀏覽器 F12 看傳參 。 模擬傳參 比模擬登陸省事點吧。uj5u.com熱心網友回復:
問題是我干嘛操作dom??無非是get提交,post提交。需要操作dom么?
uj5u.com熱心網友回復:
監控第二個界面是否全部加載完成 再點擊uj5u.com熱心網友回復:
謝謝各位!不過能說清楚點么?最好給個例子或者相似鏈接啥的,本人菜鳥一只呀!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/121454.html
標籤:C#
上一篇:json回傳值處理
下一篇:C#隨性筆記:值型別和命名規則
