全局變量表
.版本 2.全局變量 skey, 文本型.全局變量 gtk, 文本型
QQ登陸代碼
.版本 2.支持庫 spec.程序集 窗口程序集_窗口1.子程序 _超文本瀏覽框1_載入開始.局部變量 正則, 正則表達式.局部變量 cookie, 文本型cookie = 網頁_取Cookie (“qq.com”, )調試輸出 (cookie).如果真 (尋找文本 (cookie, “;skey=”, , 假) ≠ -1) 正則.創建 (“(@[0-9a-zA-Z]{9})”, , , ) 正則.搜索全部 (cookie) skey = 正則.取子匹配文本 (1, 1) gtk = 計算Gtk (skey) _啟動窗口.可視 = 真 銷毀 ().如果真結束.子程序 計算Gtk, 文本型, 公開, 返回計算后的值(Gtk).參數 被計算值, 文本型, , skey或者p_skey.局部變量 hash, 整數型.局部變量 i, 整數型.局部變量 skey1, 文本型hash = 5381skey1 = 被計算值.如果真 (skey1 = “”) skey1 = 被計算值.如果真結束.計次循環首 (取文本長度 (skey1), i) hash = hash + 左移 (hash, 5) + 取代碼 (skey1, i).計次循環尾 ()hash = 位與 (hash, 2147483647)返回 (到文本 (hash)).子程序 _窗口1_可否被關閉, 邏輯型結束 ()
微視多線程刷播放量的代碼
實現此功能需要加載精易模塊5.6、魚刺類_Http模塊和魚刺類_多線程應用模塊
.版本 2.支持庫 EThread.程序集 窗口程序集_啟動窗口.程序集變量 臨界, 魚刺類_臨界許可.程序集變量 線程池, 魚刺類_線程池Ex.程序集變量 已刷播放量, 文本型.程序集變量 id, 文本型.子程序 __啟動窗口_創建完畢_啟動窗口.可視 = 假載入 (窗口1, , 真).子程序 工作開始.局部變量 并發線程數, 整數型.局部變量 bool, 邏輯型.局部變量 需刷數量, 整數型.局部變量 int, 整數型.局部變量 已派發任務數, 整數型.如果真 (線程池.取_狀態 () ≠ 0) 返回 ().如果真結束按鈕_啟動停止.禁止 = 真按鈕_啟動停止.標題 = “正在啟動”并發線程數 = 到整數 (編輯框_并發線程數.內容).如果真 (并發線程數 < 1) 并發線程數 = 1.如果真結束.如果真 (并發線程數 > 999) 并發線程數 = 999.如果真結束bool = 線程池.創建 (并發線程數, , , , ).如果真 (bool = 假) 按鈕_啟動停止.標題 = “啟動” 按鈕_啟動停止.禁止 = 假 返回 ().如果真結束需刷數量 = 到整數 (編輯框_注冊數量.內容).如果真 (需刷數量 < 1) 需刷數量 = 1.如果真結束按鈕_啟動停止.標題 = “停止”按鈕_啟動停止.禁止 = 假已派發任務數 = 0.判斷循環首 (已派發任務數 < 需刷數量) int = 線程池.取_空閑線程數 () .判斷循環首 (int = 0) .如果真 (線程池.取_狀態 () ≠ 1) 返回 () .如果真結束 _延遲 (10) int = 線程池.取_空閑線程數 () .判斷循環尾 () .計次循環首 (int, ) 線程池.投遞任務 (&刷播放量, , ) 已派發任務數 = 已派發任務數 + 1 .計次循環尾 () _處理事件 ().判斷循環尾 ().判斷循環首 (線程池.取_是否空閑 () = 假) .如果真 (線程池.取_狀態 () ≠ 1) 返回 () .如果真結束 _延遲 (10).判斷循環尾 ()工作結束 ().子程序 工作結束.如果真 (線程池.取_狀態 () ≠ 1) 返回 () ' 防止頻繁調用 其實也沒事的 線程池在銷毀中被再次調用 銷毀 會立即返回 假 不會造成報錯.如果真結束按鈕_啟動停止.禁止 = 真按鈕_啟動停止.標題 = “正在停止”線程池.銷毀 ()按鈕_啟動停止.標題 = “啟動”按鈕_啟動停止.禁止 = 假時鐘_狀態.時鐘周期 = 1000編輯框_作品地址.禁止 = 假.子程序 刷播放量.局部變量 http, WinHttpW.局部變量 data, 文本型.局部變量 局_skey, 文本型.局部變量 局_gtk, 文本型.局部變量 局_id, 文本型臨界.進入 ()局_skey = skey局_gtk = gtk局_id = id臨界.退出 ()http.Auto ()http.AutoCookies ()http.SetTimeouts (3000, 3000, 3000, 3000)http.Cookies (“skey=” + 局_skey)http.Open (“POST”, “http://h5.qzone.qq.com/webapp/json/weishi/ReportFeedPlay?g_tk=” + 局_gtk)http.SetAccept (“application/json”)http.SetAcceptLanguage (“zh-CN,zh;q=0.9”)http.SetRequestHeader (“origin”, “https://h5.qzone.qq.com”, )http.SetReferer (“https://h5.qzone.qq.com/weishi/feed/” + 局_id + “/wsfeed?_proxy=1&_wv=1&id=” + 局_id + “&from=pc&orifrom=”)http.SetUserAgent (“Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36”)http.SetContentType (“application/json”)http.SetXMLHttpRequest ()http.Send (“{” + #引號 + “feed_id” + #引號 + “:” + #引號 + 局_id + #引號 + “}”, , )data = http.GetResponseText ()臨界.進入 ()' 試輸出 (data)已刷播放量 = 文本_取中間 (data, “playnum” + #引號 + “:”, “,” + #引號 + “_idc”, , , , )' 輸出 (已刷播放量)臨界.退出 ()返回 ().子程序 _時鐘_狀態_周期事件.局部變量 int, 整數型' 0=未啟動,1=正在工作,2=正在創建,3=正在銷毀。int = 線程池.取_狀態 ().判斷開始 (int = 0) 標簽_線程池狀態.標題 = “線程池狀態:未啟動”.判斷 (int = 1) 標簽_線程池狀態.標題 = “線程池狀態:正在工作”.判斷 (int = 2) 標簽_線程池狀態.標題 = “線程池狀態:正在創建”.判斷 (int = 3) 標簽_線程池狀態.標題 = “線程池狀態:正在銷毀”.默認.判斷結束int = 線程池.取_線程池容量 ()標簽_線程池容量.標題 = “線程池容量:” + 到文本 (int)int = 線程池.取_執行線程數 ()標簽_執行線程數.標題 = “執行線程數:” + 到文本 (int)int = 線程池.取_空閑線程數 ()標簽_空閑線程數.標題 = “空閑線程數:” + 到文本 (int)int = 線程池.取_隊列任務數 ()標簽_隊列任務數.標題 = “隊列任務數:” + 到文本 (int)標簽_已注冊數量.標題 = “已刷播放量:” + 已刷播放量.子程序 _按鈕_啟動停止_被單擊.局部變量 str, 文本型str = 按鈕_啟動停止.標題.判斷開始 (str = “啟動”) id = 文本_取中間 (編輯框_作品地址.內容, “weishi/feed/”, “/wsfeed”, , , , ) .如果 (id ≠ “”) 編輯框_作品地址.禁止 = 真 時鐘_狀態.時鐘周期 = 1000 啟動線程 (&工作開始, , ) .否則 信息框 (“未在編輯框內找到視頻id”, 0, , ) .如果結束.判斷 (str = “停止”) 工作結束 ().默認 _處理事件 ().判斷結束.子程序 __啟動窗口_可否被關閉, 邏輯型工作結束 ()
運行結果:
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。
新聞熱點
疑難解答