Synchronization

從特定時期下載 blk00000.dat 格式的塊

  • October 1, 2020

出於學習目的,我想以blk.dat 格式(blk00000.dat,blk*.dat)下載特定時期(即 2017 年 1 月至 2017 年 6 月)的塊。

我下載了 blockchain.core,但它讓我下載了整個區塊鏈——如果我錯了,請糾正我。

我也嘗試使用 blockchain.info 但問題是我一次只能獲得一個塊並且只能採用 Json 或 Hex 格式 - 不需要這些。

那麼,您知道我該怎麼做以及使用哪個程序或 API 嗎?

我是初學者,所以請你提供的細節越多越好,即使它們看起來很明顯。

對於這項工作,我正在用 python 編碼。

blk.dat 文件中的數據以二進制形式儲存,每個新塊都附加到文件末尾。塊並不總是按順序下載。

因此,您可以編寫 python 程式碼來讀取文件,轉換為十六進制,檢查它是否有在 446032-473593 之間開采的塊之一併保存所需的資訊。

<https://learnmeabitcoin.com/technical/blkdat>

我建議在您的機器上同步完整節點,而不是從外部來源下載塊數據,但是過去有一個相關問題,其中很少有可能有幫助的連結:我可以從某個地方下載整個塊鏈嗎?

python中的一個區塊鏈解析器可以幫助你解決這個問題:https ://github.com/ragestack/blockchain-parser

Bitcoin Core 是唯一一個以 blk*.dat 格式保存區塊的軟體。這種格式不是標準化的和內部的(即不向使用者公開)。例如,blk2342.dat 的內容在比特幣核心的多個實例之間可能不同。

唯一的選擇是自己執行比特幣核心,或者找一個執行比特幣核心並可以為你提供這些文件的人。

引用自:https://bitcoin.stackexchange.com/questions/99200