偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何在TRON區(qū)塊鏈上查詢交易

區(qū)塊鏈
在TRON區(qū)塊鏈上,通常有兩個(gè)交互地址,并且它們之間的交互可以采用許多不同的形式(例如,創(chuàng)建新帳戶或資產(chǎn),觸發(fā)智能合約,資產(chǎn)轉(zhuǎn)移等)。

[[396104]]

本文轉(zhuǎn)載自微信公眾號(hào)「區(qū)塊鏈研究實(shí)驗(yàn)室」,作者鏈三豐。轉(zhuǎn)載本文請(qǐng)聯(lián)系區(qū)塊鏈研究實(shí)驗(yàn)室公眾號(hào)。

乙鎖鏈交易是兩個(gè)或多個(gè)地址之間交互的記錄。

在TRON區(qū)塊鏈上,通常有兩個(gè)交互地址,并且它們之間的交互可以采用許多不同的形式(例如,創(chuàng)建新帳戶或資產(chǎn),觸發(fā)智能合約,資產(chǎn)轉(zhuǎn)移等)。

每個(gè)事務(wù)都可以通過其哈希ID(包含64個(gè)字母數(shù)字字符)來唯一識(shí)別。

獲取有關(guān)交易或一組交易的信息是區(qū)塊鏈數(shù)據(jù)分析的核心。

本文演示了如何使用R包tronr(用于探索TRON網(wǎng)絡(luò)的工具箱)收集此類信息。

查詢個(gè)人交易

tronr程序包中的幾個(gè)功能允許查詢事務(wù)數(shù)據(jù)。關(guān)鍵功能之一是get_tx_info_by_id(),它根據(jù)交易的ID(以嵌套tibble的形式)返回交易的屬性。這樣的ID可以利用其他幾種可以獲得tronr的功能,例如get_block_info(),get_blocks_for_time_range(),get_tx_for_time_range()等。這里是一個(gè)例子:

  1. require(tronr) 
  2. require(dplyr) 
  3. require(tidyr) 
  4. #> R toolbox to explore the TRON blockchain 
  5. #> Developed by Next Game Solutions (http://nextgamesolutions.com) 
  6. # Get transactions of the latest block: 
  7. latest_block <- get_block_info(latest = TRUE
  8. # Pick an example transaction
  9. tx_id <- latest_block$tx[[1]]$tx_id[1] 
  10. tx_id 
  11. "074ce32ed2ca89c69e54e4ac4ff5ee825df33f6cf087d869c44dc3456f349855" 
  12. # Retrieve transaction attributes (see documentation for their  
  13. # definitions): 
  14. r1 <- get_tx_info_by_id(tx_id = tx_id, add_contract_data = FALSE
  15. glimpse(r1) 
  16. #> Rows: 1 
  17. #> Columns: 19 
  18. #> $ request_time             <dttm> 2021-03-31 19:22:57 
  19. #> $ tx_id                    <chr> "074ce32ed2ca89c69e54e4ac4f... 
  20. #> $ block_number             <chr> "28941541" 
  21. #> $ timestamp                <dttm> 2021-03-31 19:19:06 
  22. #> $ contract_result          <chr> "SUCCESS" 
  23. #> $ confirmed                <lgl> TRUE 
  24. #> $ confirmations_count      <int> 71 
  25. #> $ sr_confirm_list          <list> [<tbl_df[19 x 3]>] 
  26. #> $ contract_type            <chr> "TriggerSmartContract" 
  27. #> $ from_address             <chr> "TSrS5zMUgzHe688XcZ4PnN5Y3c... 
  28. #> $ to_address               <chr> "TDxYAUHTw7Tk9NQfDJk9wmcsb2... 
  29. #> $ is_contract_from_address <lgl> FALSE 
  30. #> $ is_contract_to_address   <lgl> TRUE 
  31. #> $ costs                    <list> [<tbl_df[1 x 8]>] 
  32. #> $ trx_transfer             <dbl> 9.906872 
  33. #> $ trc10_transfer           <lgl> NA 
  34. #> $ trc20_transfer           <list> [<tbl_df[1 x 9]>] 
  35. #> $ internal_tx              <list> [<tbl_df[3 x 12]>] 
  36. #> $ info                     <lgl> NA 

如果將add_contact_data參數(shù)設(shè)置為TRUE,則生成的小標(biāo)題還將具有名為的列contract_data。

該列將包含一個(gè)列表,其中包含執(zhí)行相關(guān)交易的智能合約生成的原始數(shù)據(jù)。該清單的實(shí)際內(nèi)容取決于每筆交易和各自合同的性質(zhì):

  1. r2 <- get_tx_info_by_id(tx_id = tx_id, add_contract_data = TRUE
  2. glimpse(r1) 
  3. #> Rows: 1 
  4. #> Columns: 20 
  5. #> $ request_time             <dttm> 2021-03-31 19:28:23 
  6. #> $ tx_id                    <chr> "074ce32ed2ca89c69e54e4ac4f... 
  7. #> $ block_number             <chr> "28941541" 
  8. #> $ timestamp                <dttm> 2021-03-31 19:19:06 
  9. #> $ contract_result          <chr> "SUCCESS" 
  10. #> $ confirmed                <lgl> TRUE 
  11. #> $ confirmations_count      <int> 180 
  12. #> $ sr_confirm_list          <list> [<tbl_df[19 x 3]>] 
  13. #> $ contract_type            <chr> "TriggerSmartContract" 
  14. #> $ from_address             <chr> "TSrS5zMUgzHe688XcZ4PnN5Y3c... 
  15. #> $ to_address               <chr> "TDxYAUHTw7Tk9NQfDJk9wmcsb2... 
  16. #> $ is_contract_from_address <lgl> FALSE 
  17. #> $ is_contract_to_address   <lgl> TRUE 
  18. #> $ costs                    <list> [<tbl_df[1 x 8]>] 
  19. #> $ trx_transfer             <dbl> 9.906872 
  20. #> $ trc10_transfer           <lgl> NA 
  21. #> $ trc20_transfer           <list> [<tbl_df[1 x 9]>] 
  22. #> $ internal_tx              <list> [<tbl_df[3 x 12]>] 
  23. #> $ info                     <lgl> NA 
  24. #> $ contract_data            <list> [["422f1043000000000000000... 
  25. r2$contract_data[[1]] 
  26. #> $data 
  27. #> [1]"422f1043000000000000000000000000000000000000000000000000... 
  28. #> 
  29. #> $owner_address 
  30. #> [1] "TSrS5zMUgzHe688XcZ4PnN5Y3cHQA3euWt" 
  31. #>  
  32. #> $contract_address 
  33. #> [1] "TDxYAUHTw7Tk9NQfDJk9wmcsb26S8kHbdF" 
  34. #> $call_value 
  35. #> [1] 9906872 

請(qǐng)注意,在返回的tibbles所有令牌數(shù)量get_tx_info_by_id()(trx_transfer,trc10_transfer,trc20_transfer,和internal_tx)使用的整數(shù)和小數(shù)部分表示。

但如果是add_contract_data = TRUE,則返回的原始合同數(shù)據(jù)按“原樣”顯示(即無需任何解析或其他處理),因此該數(shù)據(jù)中存在的任何令牌量都使用機(jī)器級(jí)精度表示。

查詢時(shí)間范圍

要在特定時(shí)間段內(nèi)檢索交易及其屬性的列表,可以使用該get_tx_for_time_range()功能。與相比get_tx_info_by_id(),此函數(shù)有兩個(gè)附加參數(shù)定義了感興趣的時(shí)間范圍-min_timestamp和max_timestamp。這兩個(gè)附加參數(shù)都期望Unix時(shí)間戳(包括毫秒):

  1. tx_df <- get_tx_for_time_range(min_timestamp = "1577836800000"
  2.                                max_timestamp = "1577836803000"
  3. glimpse(tx_df) 
  4. #> Rows: 41 
  5. #> Columns: 20 
  6. #> $ request_time             <dttm> 2021-03-31 19:45:21, 2... 
  7. #> $ tx_id                    <chr> "5f131118e7e24725906a72... 
  8. #> $ block_number             <chr> "15860581""15860581",... 
  9. #> $ timestamp                <dttm> 2020-01-01, 2020-01-01... 
  10. #> $ contract_result          <chr> "SUCCESS""SUCCESS", "... 
  11. #> $ confirmed                <lgl> TRUETRUETRUETRUE,... 
  12. #> $ confirmations_count      <int> 13081480, 13081480, 130... 
  13. #> $ sr_confirm_list          <list> [<tbl_df[19 x 3]>, <tb... 
  14. #> $ contract_type            <chr> "TransferAssetContract"... 
  15. #> $ from_address             <chr> "TXmUfpBfxRTdbZXhzuqEJK... 
  16. #> $ to_address               <chr> "TCQBxaNNQ2h1HbrWxWSg7A... 
  17. #> $ is_contract_from_address <lgl> FALSEFALSEFALSE, FA... 
  18. #> $ is_contract_to_address   <lgl> FALSETRUETRUETRUE... 
  19. #> $ costs                    <list> [<tbl_df[1 x 8]>, <tbl... 
  20. #> $ trx_transfer             <dbl> 0.000, 200.000, 0.000, ... 
  21. #> $ trc10_transfer           <list> [<tbl_df[1 x 5]>, NULL... 
  22. #> $ trc20_transfer           <lgl> NA, NA, NA, NA, NA, NA,... 
  23. #> $ internal_tx              <list> [NULLNULL, <tbl_df[1... 
  24. #> $ info                     <lgl> NA, NA, NA, NA, NA, NA,... 
  25. #> $ contract_data            <list> [[10000000, "1002830",... 

請(qǐng)注意,get_tx_for_time_range()在后臺(tái)進(jìn)行了多個(gè)Tronscan API調(diào)用。

作為上發(fā)生的TRON blockchain交易的數(shù)量是非常大的,用戶因此宜選擇min_timestamp和max_timestamp是明智之舉。如果請(qǐng)求的時(shí)間范圍太大,則基礎(chǔ)Tronscan API返回的最大事務(wù)數(shù)將被限制為10000,并且處理時(shí)間可能會(huì)變得過長。

在這種情況下,將感興趣的時(shí)間范圍劃分為較小的時(shí)間段可以幫助避免數(shù)據(jù)缺口。

查詢特定帳戶的交易

還可以使用該get_tx_info_by_account_address()功能來檢索特定帳戶的交易數(shù)據(jù)。此外,可以在特定時(shí)間范圍內(nèi)完成此操作:

  1. tx_df_acc <- get_tx_info_by_account_address( 
  2.   address = "TAUN6FwrnwwmaEqYcckffC7wYmbaS6cBiX"
  3.   min_timestamp = "1577836800000"
  4.   max_timestamp = "1577838600000" 
  5.  
  6. glimpse(tx_df_acc) 
  7. #> Rows: 18 
  8. #> Columns: 21 
  9. #> $ request_time             <dttm> 2021-03-31 19:55:31, 2... 
  10. #> $ address                  <chr> "TAUN6FwrnwwmaEqYcckffC... 
  11. #> $ tx_id                    <chr> "36ec18062510f22a469bfb... 
  12. #> $ block_number             <chr> "15860591""15860591",... 
  13. #> $ timestamp                <dttm> 2020-01-01 00:00:36, 2... 
  14. #> $ contract_result          <chr> "SUCCESS""SUCCESS", "... 
  15. #> $ confirmed                <lgl> TRUETRUETRUETRUE,... 
  16. #> $ confirmations_count      <int> 13081672, 13081672, 130... 
  17. #> $ sr_confirm_list          <list> [<tbl_df[19 x 3]>, <tb... 
  18. #> $ contract_type            <chr> "TransferContract", "Tr... 
  19. #> $ from_address             <chr> "TAUN6FwrnwwmaEqYcckffC... 
  20. #> $ to_address               <chr> "TDn2MK7n5SqVksSZtQDAhD... 
  21. #> $ is_contract_from_address <lgl> FALSEFALSEFALSE, FA... 
  22. #> $ is_contract_to_address   <lgl> FALSEFALSEFALSE, FA... 
  23. #> $ costs                    <list> [<tbl_df[1 x 8]>, <tbl... 
  24. #> $ trx_transfer             <dbl> 664296.00000, 925.55360... 
  25. #> $ trc10_transfer           <list> [NULLNULLNULL, NUL... 
  26. #> $ trc20_transfer           <lgl> NA, NA, NA, NA, NA, NA,... 
  27. #> $ internal_tx              <lgl> NA, NA, NA, NA, NA, NA,... 
  28. #> $ info                     <lgl> NA, NA, NA, NA, NA, NA,... 
  29. #> $ contract_data            <list> [[6.64296e+11, "TAUN6F... 

現(xiàn)在,我們成功的使用R包在TRON區(qū)塊鏈查詢交易數(shù)據(jù),如有任何想法和疑問,歡迎在留言區(qū)留言。

 

責(zé)任編輯:武曉燕 來源: 區(qū)塊鏈研究實(shí)驗(yàn)室
相關(guān)推薦

2022-04-01 14:14:07

區(qū)塊鏈技術(shù)金融

2018-03-15 11:06:51

區(qū)塊鏈鉆石加密

2021-05-17 14:51:23

鏈碼區(qū)塊鏈網(wǎng)絡(luò)

2021-10-29 22:48:07

區(qū)塊鏈房地產(chǎn)安全

2022-01-12 10:37:09

區(qū)塊鏈技術(shù)金融

2022-01-20 11:47:58

區(qū)塊鏈房產(chǎn)技術(shù)

2018-03-09 15:37:30

2021-12-24 13:24:16

區(qū)塊鏈教育加密貨幣

2021-11-12 15:26:41

區(qū)塊鏈游戲技術(shù)

2024-04-22 15:25:50

IOTA物聯(lián)網(wǎng)IoT

2022-10-11 09:05:58

IPFS區(qū)塊鏈存儲(chǔ)

2021-09-23 22:40:10

區(qū)塊鏈比特幣技術(shù)

2018-03-27 09:52:30

區(qū)塊鏈數(shù)字貨幣比特幣

2019-02-27 15:32:59

電子證據(jù)司法互聯(lián)網(wǎng)

2022-02-22 14:43:16

區(qū)塊鏈游戲加密貨幣

2021-10-04 15:52:14

區(qū)塊鏈食品產(chǎn)品質(zhì)量

2021-09-30 22:42:03

區(qū)塊鏈開發(fā)供應(yīng)鏈

2024-04-01 07:00:00

區(qū)塊鏈深度偽造

2021-05-10 15:09:47

區(qū)塊鏈互聯(lián)網(wǎng)金融

2021-02-20 22:35:17

區(qū)塊鏈比特幣記賬
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)