說(shuō)導(dǎo)出教程:用 GetQzonehistory 三步跑通備份)
QQ空間說(shuō)說(shuō)導(dǎo)出教程用 GetQzonehistory 三步跑通備份【免費(fèi)下載鏈接】GetQzonehistory獲取QQ空間發(fā)布的歷史說(shuō)說(shuō)項(xiàng)目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory這是一份第一次上手實(shí)錄。GetQzonehistory 是一款免費(fèi)的QQ空間歷史說(shuō)說(shuō)導(dǎo)出工具掃碼登錄一次全部說(shuō)說(shuō)、轉(zhuǎn)發(fā)、評(píng)論和配圖會(huì)被整理成 Excel 表格與離線網(wǎng)頁(yè)版存進(jìn)你自己的電腦。本文從環(huán)境準(zhǔn)備講到結(jié)果驗(yàn)收全程約 15 分鐘。結(jié)論先行這套導(dǎo)出工具值不值得用先給判斷如果你的QQ空間里攢了幾百上千條內(nèi)容想一次性全部留在本地GetQzonehistory 是少數(shù)能直接跑通的免費(fèi)方案。它把掃碼登錄、分頁(yè)抓取、結(jié)果結(jié)構(gòu)化都做完了你不需要理解任何接口細(xì)節(jié)代價(jià)是要能在自己電腦上敲幾條 Python 命令。反過(guò)來(lái)如果你只是想存某一條特定說(shuō)說(shuō)手動(dòng)復(fù)制更快不必為此跑整套流程。30 秒自檢逐項(xiàng)對(duì)照再?zèng)Q定是否動(dòng)手目的你要的是完整長(zhǎng)期存檔而不是單條保存數(shù)據(jù)量幾百條以上更劃算條數(shù)越多省的時(shí)間越多技術(shù)基礎(chǔ)能在電腦上運(yùn)行命令行看得懂終端輸出設(shè)備一臺(tái) Windows、macOS 或 Linux 電腦加一部登著QQ的手機(jī)網(wǎng)絡(luò)全程在線抓取階段不能斷網(wǎng)五項(xiàng)都對(duì)得上往下看。準(zhǔn)備工作動(dòng)手前備齊的 4 個(gè)前提項(xiàng)要求不滿(mǎn)足怎么辦Python3.9 及以上推薦 3.10去官網(wǎng)下載安裝包安裝時(shí)勾選Add to PATHGit任意版本沒(méi)有就從官網(wǎng)下安裝包或手動(dòng)下載解壓代碼pip 網(wǎng)絡(luò)能拉取 Python 包國(guó)內(nèi)網(wǎng)絡(luò)建議走阿里云鏡像本文命令默認(rèn)已帶上zbar 共享庫(kù)二維碼識(shí)別依賴(lài)Linux 用sudo dnf install zbar或sudo apt install libzbar0macOS 由程序引導(dǎo) Homebrew 安裝依賴(lài)清單在requirements.txt里一共 11 個(gè)包requests、pandas、openpyxl、pyzbar 這些都在內(nèi)。程序全程不經(jīng)過(guò)QQ密碼沒(méi)有其他前置條件。實(shí)操走通5 步完成第一次導(dǎo)出總共 5 條命令。第一次跑建議每步都確認(rèn)通過(guò)再往下走卡住時(shí)對(duì)照下面的你會(huì)看到什么排查。第 1 步克隆代碼并進(jìn)入項(xiàng)目目錄操作git clone https://gitcode.com/GitHub_Trending/ge/GetQzonehistory # 克隆項(xiàng)目 cd GetQzonehistory # 進(jìn)入項(xiàng)目目錄你會(huì)看到什么終端提示克隆進(jìn)度完成后當(dāng)前目錄下能看到main.py、util/、requirements.txt等文件。確認(rèn)點(diǎn)執(zhí)行l(wèi)sWindows 用dir看到main.py和util目錄才算通過(guò)。第 2 步創(chuàng)建虛擬環(huán)境并安裝依賴(lài)操作python -m venv myenv # 創(chuàng)建虛擬環(huán)境 source myenv/bin/activate # 激活環(huán)境Windows 用 myenv\Scripts\activate pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt # 國(guó)內(nèi)鏡像裝依賴(lài)你會(huì)看到什么pip 依次打印下載與安裝進(jìn)度最后出現(xiàn) 11 個(gè)包的 Successfully installed 匯總。確認(rèn)點(diǎn)命令行提示符前出現(xiàn)(myenv)且安裝結(jié)尾沒(méi)有紅色 ERROR 才算通過(guò)。有包缺失時(shí)運(yùn)行階段才報(bào)錯(cuò)不如現(xiàn)在確認(rèn)清楚。第 3 步啟動(dòng)程序并掃碼登錄操作python main.py # 啟動(dòng)終端中會(huì)生成登錄二維碼你會(huì)看到什么程序先在終端畫(huà)出一個(gè)二維碼。打開(kāi)手機(jī)QQ用首頁(yè)右上角的掃一掃功能掃它手機(jī)端確認(rèn)授權(quán)后終端打印出用戶(hù)QQ號(hào),昵稱(chēng)登錄成功。確認(rèn)點(diǎn)看到登錄成功四個(gè)字才算通過(guò)。這一步的邏輯在util/LoginUtil.py里如果缺 zbar程序會(huì)在此處停下來(lái)并打印對(duì)應(yīng)系統(tǒng)的安裝命令照著裝完重新運(yùn)行即可。第 4 步等待抓取進(jìn)度走完操作無(wú)需額外命令盯著終端就行想提前停就直接按CtrlC。你會(huì)看到什么進(jìn)度條按10條為單位推進(jìn)每批結(jié)束后自動(dòng)停頓 3 秒。這個(gè)節(jié)奏是刻意限速幾千條內(nèi)容要跑不少時(shí)間進(jìn)度條走得慢屬于正常。確認(rèn)點(diǎn)進(jìn)度條走完且沒(méi)有成片的報(bào)錯(cuò)才算通過(guò)。中途按 CtrlC 時(shí)main.py里的信號(hào)處理函數(shù)會(huì)先把已抓到的數(shù)據(jù)落盤(pán)再退出前面的等待不會(huì)白費(fèi)。第 5 步打開(kāi)結(jié)果目錄驗(yàn)收操作無(wú)需命令。跑完后程序會(huì)自動(dòng)打開(kāi)本機(jī)的resource/result/QQ號(hào)/文件夾終端同時(shí)打印總條數(shù)、最早一條說(shuō)說(shuō)的發(fā)布時(shí)間和各分類(lèi)數(shù)量。你會(huì)看到什么終端出現(xiàn)幾行匯總例如共有 XXXX 條消息圖片列表共有 XX 張圖片。確認(rèn)點(diǎn)文件夾在你電腦上被打開(kāi)里面有 6 個(gè) xlsx、1 個(gè) html 和一個(gè) pic 文件夾把終端報(bào)的條數(shù)與每張表的行數(shù)大致對(duì)一遍這次導(dǎo)出就算完成。結(jié)果說(shuō)明落地到本地的 8 樣產(chǎn)物所有結(jié)果都在resource/result/QQ號(hào)/下項(xiàng)目里有一張結(jié)構(gòu)圖和實(shí)際產(chǎn)出一致圖中的層級(jí)就是最終落盤(pán)形態(tài)逐個(gè)文件的用途列在下面表中QQ號(hào)替換成你自己的號(hào)碼文件內(nèi)容在哪QQ號(hào)_全部列表.xlsx抓到的全部消息列為時(shí)間/內(nèi)容/圖片鏈接/評(píng)論resource/result/QQ號(hào)/QQ號(hào)_說(shuō)說(shuō)列表.xlsx你自己發(fā)布的說(shuō)說(shuō)同上QQ號(hào)_轉(zhuǎn)發(fā)列表.xlsx你轉(zhuǎn)發(fā)過(guò)的內(nèi)容同上QQ號(hào)_留言列表.xlsx留言板的留言記錄同上QQ號(hào)_其他列表.xlsx好友在你空間的互動(dòng)同上QQ號(hào)_好友列表.xlsx好友昵稱(chēng)、QQ號(hào)、空間主頁(yè)地址同上QQ號(hào)_說(shuō)說(shuō)網(wǎng)頁(yè)版.html離線網(wǎng)頁(yè)版按時(shí)間倒序雙擊即可看同上pic/說(shuō)說(shuō)配圖下載時(shí)已換成高清鏈接同上兩個(gè)細(xì)節(jié)值得知道程序落盤(pán)前會(huì)把圖片鏈接里的縮略圖參數(shù)替換成原圖參數(shù)見(jiàn)main.py的保存邏輯存下來(lái)的是高清圖而不是縮略圖登錄憑證以文件形式緩存在resource/user/目錄下次運(yùn)行會(huì)列出已登錄用戶(hù)讓你輸入序號(hào)不必重新掃碼。完整鏈路對(duì)照下面這張流程圖從掃碼登錄到結(jié)果落盤(pán)異常退出時(shí)會(huì)重新走登錄分支常見(jiàn)問(wèn)題5 種卡點(diǎn)及處理方式第一次跑最容易在這幾處停下來(lái)按現(xiàn)象→處理對(duì)照卡點(diǎn)原因與處理啟動(dòng)即提示無(wú)法找到 zbar 共享庫(kù)系統(tǒng)缺 zbar 庫(kù)。Linux 執(zhí)行sudo dnf install zbar或sudo apt install libzbar0macOS 在程序提示時(shí)輸入 y由 Homebrew 自動(dòng)裝掃碼后無(wú)反應(yīng)或二維碼失效二維碼過(guò)期或網(wǎng)絡(luò)中斷。重新運(yùn)行生成新碼同時(shí)確認(rèn)手機(jī)QQ在線、系統(tǒng)時(shí)間正確pip 安裝極慢或超時(shí)換鏡像源pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt只抓到一部分說(shuō)說(shuō)工具只能拿到歷史消息列表與可見(jiàn)說(shuō)說(shuō)里的內(nèi)容僅自己可見(jiàn)的天然不會(huì)出現(xiàn)可多跑幾次缺失部分會(huì)補(bǔ)上跑得特別久每批 10 條加批間停頓 3 秒是刻意限速不是卡死急用可 CtrlC 分批多次運(yùn)行數(shù)據(jù)增量保存進(jìn)階用法數(shù)據(jù)落盤(pán)后的 3 個(gè)場(chǎng)景場(chǎng)景一用 pandas 算一份說(shuō)說(shuō)年報(bào)Excel 的列名是固定的直接喂給 pandas 就能統(tǒng)計(jì)import pandas as pd df pd.read_excel(123456_說(shuō)說(shuō)列表.xlsx) # 換成你的QQ號(hào) df[時(shí)間] pd.to_datetime(df[時(shí)間], format%Y年%m月%d日 %H:%M:%S) print(df.groupby(df[時(shí)間].dt.to_period(M)).size()) # 每月說(shuō)說(shuō)條數(shù)在這四行基礎(chǔ)上加幾條語(yǔ)句就能算出最長(zhǎng)三條說(shuō)說(shuō)、配圖最多的月份回憶變成圖表。場(chǎng)景二配一條定時(shí)任務(wù)做自動(dòng)備份Linux/macOS 用crontab -e加一行每月 1 日凌晨 3 點(diǎn)自動(dòng)抓一次# crontab -e 后追加下面一行每月 1 日凌晨 3 點(diǎn)自動(dòng)抓取 0 3 1 * * cd /path/to/GetQzonehistory source myenv/bin/activate python main.pyWindows 用任務(wù)計(jì)劃程序做等價(jià)配置即可。有登錄態(tài)復(fù)用定時(shí)任務(wù)不用掃碼。場(chǎng)景三再次運(yùn)行時(shí)跳過(guò)掃碼第二次以后啟動(dòng)程序會(huì)先給這個(gè)界面已登錄用戶(hù)列表: 1. 123456 請(qǐng)選擇要登錄的用戶(hù)序號(hào)重新登錄輸入0: 1輸入序號(hào)直接復(fù)用舊登錄態(tài)輸入 0 才重新掃碼。不放心緩存時(shí)刪掉resource/user/里對(duì)應(yīng)文件即可回到掃碼流程。三個(gè)目錄的存放路徑都寫(xiě)在resource/config/config.ini想換輸出位置只改這一個(gè)文件。邊界提醒?? 動(dòng)手前把這 5 行看完只備份自己賬號(hào)下的內(nèi)容不要用它采集他人空間的數(shù)據(jù)項(xiàng)目自帶免責(zé)聲明僅供學(xué)習(xí)與技術(shù)研究不得商用或作非法用途數(shù)據(jù)全程本地處理只寫(xiě)入你的硬盤(pán)不經(jīng)過(guò)任何第三方服務(wù)器登錄憑證存在resource/user/刪除即回到掃碼登錄隨時(shí)可重置保持程序默認(rèn)的抓取頻率不要為求快改小停頓參數(shù)第一次備份到此結(jié)束——從這一刻起你的說(shuō)說(shuō)檔案有一份不再隨頁(yè)面消失的副本下次再運(yùn)行python main.py時(shí)會(huì)更順手輸入一個(gè)用戶(hù)序號(hào)就行。如果這次跑得很順順手到項(xiàng)目頁(yè)面點(diǎn)個(gè) Star讓下一個(gè)想備份的人更容易找到它?!久赓M(fèi)下載鏈接】GetQzonehistory獲取QQ空間發(fā)布的歷史說(shuō)說(shuō)項(xiàng)目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考