您好,登錄后才能下訂單哦!
這篇“如何利用Python制作簡易的點贊器”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“如何利用Python制作簡易的點贊器”文章吧。
模擬點擊操作,觸發點贊,喜歡等操作。
實現點贊操作前,還有一步重要的代碼實現,模擬登錄。
因此,點贊機器人的基本需求如下:
模擬登錄;
進行點贊;
對該需求進行擴展后,存在兩個常見的業務場景。
通過模擬登錄大量賬號,實現針對 “一人/一物/一文/一視頻” 的大量點贊,即刷別人的分;
通過登錄一賬號,實現針對“多人”的批量點贊,即刷自己的分。
基本邏輯梳理清楚之后,就可以進入實際的編碼環節。
在登錄實現上,存在兩種思路:
大量注冊(也可購買)賬號,通過 Python 程序切換賬號,每次登錄點贊之后,切換下一賬號;
提前通過技術或人工手段,模擬登錄,記錄賬號登錄后產生的 Cookie,后續維護 Cookie 池實現操作邏輯。
思路二存在的問題為 Cookie 有效期問題,如網站無此限制,建議采用該方式,效率更高。
偽代碼實現
# 思路一 with open("users.txt","r") as f: user_pass = f.readline() # 模擬登錄 login(user_pass) # 完成登錄后操作 do_someting() # 思路二 with open("cookies.txt","r") as f: one_cookie = f.readline() # 通過攜帶 cookie 參數訪問接口 get_detail(one_cookie) with open("users.txt","r") as f: user_pass = f.readline() # 模擬登錄 login(user_pass) # 完成登錄后操作 do_someting() # 思路二 with open("cookies.txt","r") as f: one_cookie = f.readline() # 通過攜帶 cookie 參數訪問接口 get_detail(one_cookie) with open("users.txt","r") as f: user_pass = f.readline() # 模擬登錄 login(user_pass) # 完成登錄后操作 do_someting() # 思路二 with open("cookies.txt","r") as f: one_cookie = f.readline() # 通過攜帶 cookie 參數訪問接口 get_detail(one_cookie) # 思路一 with open("users.txt","r") as f: user_pass = f.readline() # 模擬登錄 login(user_pass) # 完成登錄后操作 do_someting() # 思路二 with open("cookies.txt","r") as f: one_cookie = f.readline() # 通過攜帶 cookie 參數訪問接口 get_detail(one_cookie)
其中思路二的 Cookie 池,可以人工或者使用程序創建。
在模擬登錄部分,你將碰到兩個學習難點
1.驗證碼識別問題;
2.IP 反爬限制。
難點一最易上手的解決方案,對接打碼平臺。
難點二解決方案,購買 IP 代理池,也可自建代理池,重點看項目成本與對穩定性的要求。
在很多項目中,當你完成了模擬登錄操作,已經表示該網站對你 完全開放了。
接下來你要做的就是尋找點贊接口,例如下面的案例(只做參考使用):
CSDN 點贊接口如下:
# POST 傳遞用戶標識與文章 ID Request URL: https://blog.csdn.net//phoenix/web/v1/article/like Request Method: POST # POST 參數如下 articleId=118558076
知乎點贊接口如下:
# 直接 POST 傳遞,用戶標識在 Cookie 中 Request URL: https://www.zhihu.com/api/v4/zvideos/1391420717800554497/likers Request Method: POST
bilibili 點贊接口如下:
# 傳遞用戶標識的同時,傳遞相應的參數 Request URL: https://api.bilibili.com/x/web-interface/archive/like Request Method: POST # POST 參數如下 aid: 631588341 like: 1 csrf: b39b26b6b8071e2f908de715c266cb59
通過上述幾個案例,你會發現,點贊操作接口格式基本類似,都是通過 POST 傳遞 Cookie 與特定參數到服務器中。
其中 B 站的特殊一些,攜帶了一個 csrf 參數,該參數可以從 Cookie 中直接提取。
偽代碼實現
import requests def like(params): # 請求頭中獲取 Cookie 由模擬登錄獲取 cookie = get_cookie() # cookie = login() headers = { "其它屬性":"屬性值", "Cookie":cookie # 重點包含用戶標識 Cookie } res = requests.post("地址","參數","請求頭")
在調用點贊接口部分,你將碰到一個學習難點
接口中包含位置參數,例如上述的 B 站點贊鏈接中的 csrf,碰到未知參數的解決思路參考下述描述。
繼續拿 B 站舉例,打開瀏覽器開發者工具,切換到 network 選項卡,當點擊點贊的時候,會出現點贊的數據請求,如下圖所示。
該請求同時出現了 POST 的相關參數,接下來,你只需要按下鍵盤的 Ctrl+F,打開搜索窗口(就是在當前開發者工具的 network 選項卡中打開),在搜索框中,輸入要檢索的值,即可找到該值所出現的所有請求位置,然后再進行后續分析即可。重點要找到該參數值產生的位置與原理。
以上就是關于“如何利用Python制作簡易的點贊器”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。