2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

自己動(dòng)手寫工具:自動(dòng)點(diǎn)擊小插件

 天使之翼 ` 2019-06-25

一、 模擬點(diǎn)擊操作應(yīng)用場景

  當(dāng)我們需要對(duì)一個(gè)網(wǎng)頁上的某個(gè)按鈕進(jìn)行多次點(diǎn)擊以求得某種“好處”的時(shí)候,例如天貓的搶紅包活動(dòng),我們可能需要點(diǎn)擊N次之后才有可能獲得一個(gè)紅包,但是這個(gè)N是一個(gè)未知數(shù),有可能我們要不停地點(diǎn)擊半個(gè)小時(shí)甚至一個(gè)小時(shí)都還無法獲得,自己估計(jì)也會(huì)點(diǎn)鼠標(biāo)點(diǎn)得醉了。因此,針對(duì)這種情況,我們希望自己寫一個(gè)小工具來讓計(jì)算機(jī)幫我們做這件事。

  既然是讓計(jì)算機(jī)模擬我們的點(diǎn)擊操作,其思路自然是找到指定的按鈕或圖片,循環(huán)對(duì)其執(zhí)行click事件。于是,我們開始對(duì)其做一個(gè)最簡單的實(shí)現(xiàn)來看看其基本思路。首先,我們準(zhǔn)備一個(gè)網(wǎng)站,這里我是用ASP.NET開發(fā)了一個(gè)網(wǎng)頁,其中有一張圖片作為搶紅包的按鈕圖片,然后寫了一個(gè)一般處理程序。

  (1)前端網(wǎng)頁的HTML代碼:

View Code

  其顯示效果如下圖所示:

 ?。?)后端一般處理程序代碼:

View Code

  當(dāng)用戶點(diǎn)擊前端網(wǎng)頁中的圖片時(shí),會(huì)發(fā)出一個(gè)AJAX請(qǐng)求到服務(wù)端,服務(wù)端會(huì)生成一個(gè)1到100之間的隨機(jī)數(shù)來模擬概率,只有在隨機(jī)生成的數(shù)字達(dá)到95以上(即5%的概率)才給用戶返回獲得紅包的效果。

 ?、?zèng)]有獲得紅包的點(diǎn)擊后的效果:

  ②獲得紅包的點(diǎn)擊后的效果:

二、借助WebBrowser控件實(shí)現(xiàn)自動(dòng)點(diǎn)擊

  2.1 強(qiáng)大的控件—WebBrowser

    新建一個(gè)WindowsForm項(xiàng)目,拖入一個(gè)GroupPanel、TextBox、Button以及WebBrowser控件構(gòu)成下面的界面效果:

  2.2 借助HtmlElement.InvokeMember方法模擬點(diǎn)擊

PS:這里假設(shè)我們已經(jīng)通過查看HTML代碼知道了要模擬點(diǎn)擊的按鈕的id,不要告訴我說你不會(huì)查看網(wǎng)頁的源代碼哦。

復(fù)制代碼
        void btnGetMoney_Click(object sender, EventArgs e)
        {
            AutoClick(10);
        }void AutoClick(int count = 1)
        {
            HtmlDocument dom = webBrowser.Document;if(dom == null)
            {return;
            }var btn = dom.GetElementById("btnGetMoney");for (int i = 0; i < count; i++)
            {
                btn.InvokeMember("click");
            }
        }
復(fù)制代碼

  在C#中封裝了針對(duì)DOM樹的類:HtmlDocument,每一個(gè)Html標(biāo)簽都被封裝為HtmlElement。這里我們首先通過DOM操作(GetElementById)找到要點(diǎn)擊的button按鈕,然后一個(gè)循環(huán)操作,通過封裝的InvokeMember方法執(zhí)行click事件。默認(rèn)情況下,這個(gè)方法只會(huì)執(zhí)行一次,當(dāng)然這里我們模擬了10次。

  2.3 簡單模擬自動(dòng)點(diǎn)擊的效果演示

三、借助Google瀏覽器擴(kuò)展插件實(shí)現(xiàn)自動(dòng)點(diǎn)擊

3.1 關(guān)于Google瀏覽器擴(kuò)展插件

  Chrome是什么在此就不做贅述了,想必看到這篇文章的人對(duì)其都非常熟悉。Chrome一個(gè)突出的特點(diǎn)就是允許用戶開發(fā)第三方插件以擴(kuò)展瀏覽器功能。雖然IE、火狐也都支持第三方插件對(duì)瀏覽器功能進(jìn)行拓展,但對(duì)其開發(fā)遠(yuǎn)沒有Chrome瀏覽器插件方便,加之Chrome瀏覽器市場占有率持續(xù)增長,大家對(duì)Chrome瀏覽器插件的開發(fā)更加感興趣。下圖是迅雷針對(duì)Chrome瀏覽器開發(fā)的擴(kuò)展插件。

3.2 開發(fā)自動(dòng)點(diǎn)擊插件AutoClickDemo

 ?。?)插件的總目錄:manifest.json

  每個(gè)Chrome插件都包含一個(gè)manifest.json的文件,這是Chrome插件的總目錄,里面定義了每個(gè)資源都是做什么的。manifest.json文件里是一個(gè)json類型的數(shù)據(jù)。

  按chrome開發(fā)規(guī)范,我們首先建一個(gè)文件夾,如D:\AutoClickDemo\,在該文件夾下新建一個(gè)名為manifest.json的文本文件,并按實(shí)際情況放一個(gè)圖片文件,作為插件的圖標(biāo)。然后新建一個(gè)名為myscript.js的js腳本文件,作為我們需要自定義模擬點(diǎn)擊的腳本文件。最后,如果需要用到j(luò)Query,還需要把jQuery放到文件夾目錄中:

    

  該manifest.json文件的內(nèi)容和解釋如下:

  具體代碼為:

復(fù)制代碼
{ 
  "name": "刷紅包(演示)",
  "version": "1.0",
  "manifest_version":2,
  "description": "This is a auto click plug-in, you can use it in the web site",
  "icons":{"16":"16.png","48":"48.png","128":"128.png"},
  "permissions": ["http://*/*"],
  "browser_action": {
        "default_icon": "16.png"
  }, 
  "content_scripts":[
  {
      "matches":["http://localhost:4351/*"],
      "js":["jquery-1.7.1.min.js","myscript.js"]
  }
  ]
}
復(fù)制代碼

 ?。?)自定義的腳本:myscript.js

   剛剛manifest.json只是幫我們生成了一個(gè)目錄給Chrome瀏覽器,具體的操作還得自定義一個(gè)js腳本來生成。代碼很簡單,就是每隔1秒鐘點(diǎn)擊一次按鈕。寫好自定義腳本后,在Chrome瀏覽器中添加這個(gè)擴(kuò)展插件,以后在打開指定網(wǎng)頁時(shí)都會(huì)加載我們的自定義腳本來完成我們想要的操作。

復(fù)制代碼
function autoClick(){
    $("#btnGetMoney").click();
}

setInterval(autoClick,1000);

$(function(){
    
});
復(fù)制代碼

 ?。?)為Chrome添加擴(kuò)展插件

  在Chrome菜單中,選擇 工具-擴(kuò)展程序 ,進(jìn)入以下界面。然后勾選住 開發(fā)者模式,然后加載正在開發(fā)的擴(kuò)展程序。

 ?。?)打開指定網(wǎng)頁體驗(yàn)?zāi)M點(diǎn)擊效果

四、小結(jié)

  本次的小插件開發(fā)以模擬點(diǎn)擊一個(gè)“搶紅包”按鈕為場景,以兩種方式實(shí)現(xiàn)了一個(gè)簡單得不能再簡單的刷紅包效果,但是其基本思路都我們都已經(jīng)了解了。以后再面對(duì)這種應(yīng)用,可以自己寫一些功能豐富的插件或者程序來實(shí)現(xiàn)了。

作者:周旭龍

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多