郊果如下,移動滑鼠到下一頁,變成一個手

請問,在WebBrowser里如何實作模擬滑鼠移動?
uj5u.com熱心網友回復:
思路應該不對,如果真要按照你的思路走,你需要先解決幾個問題:1、WebBrowser的大小不同會影響目標網頁布局,這時候你如何確保布局的可靠性?
2、即使識別了是你指定的網頁地址,但目標點擊區域未必呈現在可視區域,有可能在滾動條底部或中間什么位置,甚至有時候可能目標網頁多個廣告或臨時滿屏廣告也是有可能的,這時候你又如何確保目標點擊區域一定在可視區域?又該如何確保穩定性?
3、這種需求模擬滑鼠點擊,需要根據視窗的顯示隱藏狀態,是否被覆寫狀態以及視窗位置決定是否抓取視窗圖片,然后通過區域特征碼識別的方法進行區域識別,識別成功了之后才模擬點擊,讓如果出現相同的圖形特征怎么辦?
總之,這種操作不是不可以實作,而是穩定性差,維護性高,不建議這么弄。
建議還是直接找鏈接地址直接通過URL拉資料的簡單穩定,而且效率要比這種圖形AI高很多。
uj5u.com熱心網友回復:
幫我把滑鼠移過去就行,穩定性無所謂,其它我有辦法uj5u.com熱心網友回復:
控制游標不太好辦,但是有不移動游標的變通方法。直接把“下一頁”這個元素設定為當前焦點,如果想自動點擊,就用click()方法:
document.getElementById("blogClick").focus();//把指定ID的元素設定為當前焦點
document.getElementById("blogClick").click();//點擊指定ID的元素
uj5u.com熱心網友回復:
還有另一種方法:把所有頁碼的鏈接、下一頁的鏈接提取出來,然后根據這些鏈接生成對應的選單項或者按鈕,點表單上的按鈕時(比如第8頁),webbrowser導航到對應的鏈接(第8頁對應的鏈接)。
uj5u.com熱心網友回復:
我必需要移動游標到一下頁停留幾秒,click()我會用,但不是不行。辦不了事uj5u.com熱心網友回復:
我必需要移動游標到一下頁停留幾秒,click()我會用,但不是不行。辦不了事uj5u.com熱心網友回復:
獲取這個元素所在位置,然后用滑鼠移動過去。你把你的網址url發出來看看uj5u.com熱心網友回復:
<div id="page" >
<strong><span class="fk fk_cur"><i class="c-icon c-icon-bear-p"></i></span><span class="pc">1</span></strong><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=10&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk fkd"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">2</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=20&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">3</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=30&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk fkd"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">4</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=40&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">5</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=50&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk fkd"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">6</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=60&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">7</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=70&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk fkd"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">8</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=80&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">9</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=90&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI"><span class="fk fkd"><i class="c-icon c-icon-bear-pn"></i></span><span class="pc">10</span></a><a href="https://bbs.csdn.net/s?wd=%E8%84%9A%E8%BD%AE%E5%8E%82&pn=10&oq=%E8%84%9A%E8%BD%AE%E5%8E%82&ie=utf-8&usm=2&rsv_idx=1&rsv_pq=c1b9e8750000743d&rsv_t=8644HEc%2FDL758vGa7ZxIuciCPubi5ePfCr1LsbMj4QiF0UGpHfZYBAUCQnI&rsv_page=1" class="n">下一頁></a>
</div>
uj5u.com熱心網友回復:
你這是想模擬點擊百度搜索結果的下一頁是吧。直接用SetCursorPos移動滑鼠好了,網頁載入時下拉到底部,這樣這個“下一頁”距離坐標和下面就固定了。上述代碼使用了clswindow框架
Private Sub Command1_Click()
Dim w As New clsWindow
w.hWnd = Me.hWnd
w.ClickPoint 627, w.Height - 104, , , 3500 ‘等待3.5秒后執行點擊’
End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
WebBrowser1.Document.parentWindow.Scroll 0, WebBrowser1.Document.Body.scrollHeight
End Sub
框架下載地址:https://github.com/sysdzw/clswindow
框架介紹地址:https://blog.csdn.net/sysdzw/article/details/9083313
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/25188.html
標籤:網絡編程
