抖音各加密參數說明和獲取(含代碼)

?X-Bogus:X-Bogus是一種防數據包偽造的一個參數, 又稱為x偽造,主要用于反爬蟲,這個是某節公司下面基礎服務,這個反爬蟲機制幾乎用在了它所有的產品中,不過,只要是能正常使用,這些東西都是透明的,X-Bogus生成算法。

獲取方法參考某大佬文章:【爬蟲實戰】使用Python和JS逆向抖音X-Bogus參數獲取N條視頻-CSDN博客

msToken:msToken可以理解成Message Token,相當于每次消息請求的令牌,主要用于請求統計,這也是具有反爬蟲的機制,如果相同msToken請求太多,也會被定義成惡意請求,這時候會出現驗證碼校驗。所以我們在使用的時候,可以用uuid或者是雪花算法的id來模擬msToken,當然長度大于32位的唯一串最好
獲取方法如下:

    def get_ms_token(self, randomlength=107):"""根據傳入長度產生隨機字符串"""random_str = ''base_str = 'ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789='length = len(base_str) - 1for _ in range(randomlength):random_str += base_str[random.randint(0, length)]return random_str


?

__signature:signature是簽名,主要是防止數據傳輸的過程中,“中間人”對數據進行串改。簽名一般都是公鑰加密,私鑰驗簽。參與簽名的參數有url地址中的參數,還有post請求中的內容,也會參與簽名。signature主要用于post或者put表單的時候進行使用,其他情況暫時未遇到。

獲取方法參考某大佬文章

某音簽名jsvmp還原__ac_signature-CSDN博客

__ac_nonce:臨時加密參數,用于與_signature一起使用

ttwid:ttwid類似客戶端id,即便是游客模式,也可以對頁面數據進行埋點統計,通過收集ttwid下的用戶行為數據,給與內容推薦和廣告推薦。這個也是某節公司下的基礎服務,所以生成的id,只要是某節下的服務都可以使用


?
webid:同ttwid,類似客戶端id,也可以說是瀏覽器id,不過ttwid可在cookie獲取,webid可在隨意一個視頻請求,返回的html文本的script里再通過正則獲取

ttwid和webid獲取方法:(js代碼就在如上:某音簽名jsvmp還原__ac_signature-CSDN博客,自己抄,因為怕版權問題就不復制了)

    def get_ttwid_webid(self, req_url):"""獲取 ttwid 和 webid:param req_url:請求的視頻地址:return:"""try:response = requests.request("GET", req_url, headers=self.ttwid_webid_headers, verify=False, timeout=3)cookies_dict = response.cookies.get_dict()ac_nonce = cookies_dict.get('__ac_nonce')if(ac_nonce):ac_signature = execjs.compile(open(self.ac_sign_js_path).read()).call('func1', req_url, self.user_agent,ac_nonce)ttwid_webid_headers1 = copy.deepcopy(self.ttwid_webid_headers)ttwid_webid_headers1['Referer'] = req_urlttwid_webid_headers1['Cookie'] = f'__ac_nonce={ac_nonce}; __ac_signature={ac_signature}; __ac_referer=__ac_blank'response = requests.request("GET", req_url, headers=ttwid_webid_headers1, verify=False, timeout=3)if (("/captcha/index.js" in response.text) or ("Please wait...</body>" in response.text)):print("跳出驗證碼,暫停爬取")time.sleep(5)return self.get_ttwid_webid(req_url)else:render_data_text = \re.compile('\<script id=\"RENDER_DATA\" type\=\"application\/json\">(.*?)\<\/script\>').findall(response.text)[0]render_data_text = requests.utils.unquote(render_data_text)render_data_json = json.loads(render_data_text, strict=False)webid = render_data_json.get('app').get('odin').get('user_unique_id')cookies_dict = response.cookies.get_dict()ttwid_str = cookies_dict.get('ttwid')return ttwid_str, webidexcept (requests.exceptions.ProxyError, requests.exceptions.ReadTimeout,requests.exceptions.ConnectionError) as e:logging.error(e)time.sleep(5)return self.get_ttwid_webid(req_url)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/214033.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/214033.shtml
英文地址,請注明出處:http://en.pswp.cn/news/214033.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

什么是Non EC

今天在填一個表單時&#xff0c;里面有個Non EC的選項&#xff0c;不解其意。原來是歐盟成員國國民的意思&#xff0c;因為歐盟法規各方面比較嚴厲&#xff0c;所以會單列出來&#xff0c;作為一個條件。 互聯網查詢結果如下&#xff1a; Non-EC是指非歐盟&#xff08;EU&#…

PHP基礎 - 常量字符串

常量 在PHP中,常量是一個簡單值的標識符,定義后默認是全局變量,可以在整個運行的腳本的任何地方使用。常量由英文字母、下劃線和數字組成,但數字不能作為首字母出現。 PHP中定義常量的方式是使用define()函數,其語法如下: bool define( string $name, mixed $value [,…

使用人工智能優化常見業務流程

在現代商業環境中&#xff0c;人工智能(AI)正在改變企業的運營方式。將人工智能集成到業務流程中可以提高效率和準確性&#xff0c;從而節省大量時間和成本。 這使員工能夠專注于更具戰略性的任務。人工智能在商業中的應用范圍從自動化日常任務到提供高級分析&#xff0c;以做…

【mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar安裝】linux安裝mysql5.7

之前安裝的時候遇到了很多問題&#xff0c;浪費了一些時間。整理出這份教程&#xff0c;照著做基本一遍過。 這是安裝包: 鏈接&#xff1a;https://pan.baidu.com/s/1gBuQBjA4R5qRYZKPKN3uXw?pwd1nuz 1.下載安裝包&#xff0c;上傳到linux。我這里就放到downloads目錄下面…

郵政快遞單號查詢入口,刪除不需要的單號

批量查詢郵政快遞單號的物流信息&#xff0c;并刪除不需要的單號。 所需工具&#xff1a; 一個【快遞批量查詢高手】軟件 郵政快遞單號若干 操作步驟&#xff1a; 步驟1&#xff1a;運行【快遞批量查詢高手】軟件&#xff0c;第一次使用的伙伴記得先注冊&#xff0c;然后登錄…

SimpleSQL

游戲和應用中的SQL集成 simpleSQL可將數據庫存儲集成到您的游戲或項目中。創建水平地圖鏈接,存儲球員的統計資料,保持庫存規格,以及更多! 請注意,simpleSQL是本地數據庫解決方案,不能連接到服務器數據庫 將SQLite數據庫附加到場景中的管理器 無需移動移動設備上的文件! 使…

LeetCode力扣每日一題(Java):20、有效的括號

一、題目 二、解題思路 1、我的思路 我看到題目之后&#xff0c;想著這可能是力扣里唯一一道我能秒殺的題目了 于是一波操作猛如虎寫出了如下代碼 public boolean isValid(String s) {char[] c s.toCharArray();for(int i0;i<c.length;i){switch (c[i]){case (:if(c[i]…

玩法題材創新的跑酷游戲,廣告變現不止帶來收益 | TopOn變現干貨

跑酷游戲是一類永不落伍的游戲。從遠古的紅白機到現代的PC、手機&#xff0c;經典作品層出不窮&#xff0c;而提起手機端的跑酷游戲&#xff0c;相信大部分玩家腦海里的第一印象便是《神廟逃亡》和《地鐵跑酷》這兩款經典游戲&#xff0c;在上躥下跳、左右挪移間躲避障礙&#…

2023年12月7日:QT實現登陸界面

#include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//窗口設置this->resize(600,500);//重新設置窗口大小this->setWindowTitle("QQ-盜版");//設置窗口名為QQ-盜版this->setWindowIcon(QIcon("D:\\Qt\\funny\\pi…

VOS3000 在安裝AXB時需要幾個步驟

安裝 VOS3000 AXB 模板需要按照以下步驟進行操作&#xff1a; 首先&#xff0c;確保你已經在服務器上安裝了 CentOS 或者其他 Linux 操作系統&#xff0c;并且已經完成了基本的系統設置和網絡配置。 下載 VOS3000 軟件包&#xff0c;并解壓縮到服務器上的指定目錄中。 進入…

[虛擬機]使用VM打開虛擬機電腦重啟解決方案。

問題&#xff1a;打開虛擬機點擊啟動后&#xff0c;電腦會自動重啟。&#xff08;WINDOWS10 20版本&#xff09; 解決步驟&#xff1a; 1、對Windows功能進行操作。 上圖三個啟用。 上圖一個取消。 再次打開后&#xff0c;不報警&#xff0c;顯示下圖問題&#xff1a; 繼續解…

直流電和交流電

直流電&#xff08;Direct Current&#xff0c;簡稱DC&#xff09;和交流電&#xff08;Alternating Current&#xff0c;簡稱AC&#xff09;是電流的兩種基本形式。 1. 直流電 直流電是指電流方向始終保持不變的電流。在直流電中&#xff0c;電子只能沿著一個方向移動。直流電…

采集數據更快捷,輕松生成調查問卷二維碼

現在用二維碼的方式來采集用戶的數據&#xff0c;是現在很常用的一種統計數據的手段&#xff0c;這種方法更加簡單快捷做好數據統計&#xff0c;那么表單類型的二維碼能如何快速生成呢&#xff1f;下面來教大家在線二維碼生成器的使用方法&#xff0c;能夠用簡單的步驟快速制作…

050:vue項目webpack打包,大文件分成幾個小文件的方法

第050個 查看專欄目錄: VUE ------ element UI 專欄目標 在vue和element UI聯合技術棧的操控下&#xff0c;本專欄提供行之有效的源代碼示例和信息點介紹&#xff0c;做到靈活運用。 &#xff08;1&#xff09;提供vue2的一些基本操作&#xff1a;安裝、引用&#xff0c;模板使…

flask之文件上傳

1、創建表單提交頁面&#xff0c;如&#xff1a;upload.html <html> <head><title>File Upload</title> </head> <body><form action"http://localhost:8888/uploadfile" method"POST" enctype"multipart/fo…

自定義類型詳解(1)

文章目錄 目錄1. 結構體1.1 結構的基礎知識1.2 結構的聲明1.3 特殊的聲明1.4 結構的自引用1.5 結構體變量的定義和初始化1.6 結構體內存對齊1.7 修改默認對齊數1.8 結構體傳參 2. 位段2.1 什么是位段2.2 位段的內存分配2.3 位段的跨平臺問題2.4 位段的應用 3. 枚舉3.1 枚舉類型…

linux向日葵開機自啟動

有個服務需要先開啟: sudo systemctl start runsunloginclient.service 開機自啟動服務: sudo systemctl enable runsunloginclient.service 然后再啟動就可以了 sudo systemctl status runsunloginclient.service 開機自啟后進行檢查service服務狀態 開發板ubuntu系統上如…

蝦皮選品:如何在蝦皮平臺上進行選品以提高銷售額和利潤

在蝦皮&#xff08;Shopee&#xff09;平臺上進行選品時&#xff0c;可以遵循以下策略和技巧&#xff0c;以便找到有潛力的產品并提高銷售額。 先給大家推薦一款shopee知蝦數據運營工具 知蝦免費體驗地址&#xff08;復制瀏覽器打開&#xff09;&#xff1a;d.ddqbt.com/JU5o …

Java并發(二)

一、并發編程三要素 1、原子性 原子性指的是一個或者多個操作&#xff0c;要么全部執行并且在執行的過程中不被其他操作打斷&#xff0c;要么就全部都不執行。 2、可見性 可見性指多個線程操作一個共享變量時&#xff0c;其中一個線程對變量進行修改后&#xff0c;其他線程可以…

亞信安慧通過ISO20000認證,AntDB數據庫團隊服務能力再上新臺階

近日&#xff0c;湖南亞信安慧科技有限公司&#xff08;簡稱“亞信安慧”&#xff09;獲得《信息安全管理服務管理體系認證證書》&#xff0c;標志著公司已建立起一套與國際對標的IT系統管理體系&#xff0c;在信息技術服務能力上取得了新的里程碑。 圖1 亞信安慧通過ISO20000認…