Block-Header

如何獲取blockheader列表

  • February 12, 2021

我知道我可以getheader 'hash'從比特幣核心使用,但我不能將它用於所有塊,這很耗時。有沒有可以找到所有比特幣區塊頭的網站?像區塊鍊網站但顯示區塊頭?

感謝您的幫助,謝謝

您可以利用 Blockchain.com 的 API(以前稱為 Blockchain.info)。

您可以通過以下形式的 URL 根據塊高度訪問 BTC 塊https://blockchain.info/rawblock/<height+1>。我們使用<height+1>1 是因為 1 用作創世塊的索引,通常將其稱為塊 0,因為它被定義為高度為 0。

預設情況下,此端點提供塊中數據的 JSON 轉儲,但您可以通過附加查詢字元串以十六進製字元串形式獲取原始塊數據?format=hex。例如,https://blockchain.info/rawblock/2?format=hex將為您提供創世塊(高度為 1 的塊)之後的塊中的數據作為十六進製字元串。

塊頭是 80 個字節,或 160 個半字節(十六進製字元),因此您可以例如使用curl來獲取數據,然後head將其截斷為頭,然後將該十六進製字元串保存到文件中:

curl 'https://blockchain.info/rawblock/2?format=hex' | head -c 160 > block-1.txt

您可以使用簡單的 Bash 腳本為所有塊自動執行此操作:

#!/bin/bash

latest_block_height=670288

for ((i=0; i <= latest_block_height; i++)); do
   if ! [ -f "block-$i.txt" ]; then
       curl 'https://blockchain.info/rawblock/'"$(($i + 1))"'?format=hex' | head -c 160 > "block-$i.txt"
   fi
   echo "Downloaded block $i."
done

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