3
3
4
4
5
5
class Account (Client ):
6
+ PAGE_NUM_PATTERN = re .compile (
7
+ '[1-9](?:\d{0,2})(?:,\d{3})*(?:\.\d*[1-9])?|0?\.\d*[1-9]|0' )
8
+
6
9
def __init__ (self , address = Client .dao_address , api_key = 'YourApiKeyToken' ):
7
10
Client .__init__ (self , address = address , api_key = api_key )
8
11
self .url_dict [self .MODULE ] = 'account'
@@ -21,9 +24,11 @@ def get_balance_multiple(self):
21
24
req = self .connect ()
22
25
return req ['result' ]
23
26
24
- def get_transaction_page (self , page = 1 , offset = 10000 , sort = 'asc' , internal = False ) -> list :
27
+ def get_transaction_page (self , page = 1 , offset = 10000 , sort = 'asc' ,
28
+ internal = False ) -> list :
25
29
"""
26
- Get a page of transactions, each transaction returns list of dict with keys:
30
+ Get a page of transactions, each transaction
31
+ returns list of dict with keys:
27
32
nonce
28
33
hash
29
34
cumulativeGasUsed
@@ -62,7 +67,8 @@ def get_transaction_page(self, page=1, offset=10000, sort='asc', internal=False)
62
67
req = self .connect ()
63
68
return req ['result' ]
64
69
65
- def get_all_transactions (self , offset = 10000 , sort = 'asc' , internal = False ) -> list :
70
+ def get_all_transactions (self , offset = 10000 , sort = 'asc' ,
71
+ internal = False ) -> list :
66
72
if internal :
67
73
self .url_dict [self .ACTION ] = 'txlistinternal'
68
74
else :
@@ -77,19 +83,23 @@ def get_all_transactions(self, offset=10000, sort='asc', internal=False) -> list
77
83
self .build_url ()
78
84
req = self .connect ()
79
85
if "No transactions found" in req ['message' ]:
80
- print ("Total number of transactions: {}" .format (len (trans_list )))
86
+ print (
87
+ "Total number of transactions: {}" .format (len (trans_list )))
81
88
self .page = ''
82
89
return trans_list
83
90
else :
84
91
trans_list += req ['result' ]
85
92
# Find any character block that is a integer of any length
86
- page_number = re .findall (r'[1-9](?:\d{0,2})(?:,\d{3})*(?:\.\d*[1-9])?|0?\.\d*[1-9]|0' , self .url_dict [self .PAGE ])
93
+ page_number = re .findall (Account .PAGE_NUM_PATTERN ,
94
+ self .url_dict [self .PAGE ])
87
95
print ("page {} added" .format (page_number [0 ]))
88
96
self .url_dict [self .PAGE ] = str (int (page_number [0 ]) + 1 )
89
97
90
- def get_blocks_mined_page (self , blocktype = 'blocks' , page = 1 , offset = 10000 ) -> list :
98
+ def get_blocks_mined_page (self , blocktype = 'blocks' , page = 1 ,
99
+ offset = 10000 ) -> list :
91
100
"""
92
- Get a page of blocks mined by given address, returns list of dict with keys:
101
+ Get a page of blocks mined by given address,
102
+ returns list of dict with keys:
93
103
blockReward (in wei)
94
104
blockNumber
95
105
timeStamp
@@ -117,12 +127,15 @@ def get_all_blocks_mined(self, blocktype='blocks', offset=10000) -> list:
117
127
req = self .connect ()
118
128
print (req ['message' ])
119
129
if "No transactions found" in req ['message' ]:
120
- print ("Total number of blocks mined: {}" .format (len (blocks_list )))
130
+ print (
131
+ "Total number of blocks mined: {}" .format (
132
+ len (blocks_list )))
121
133
return blocks_list
122
134
else :
123
135
blocks_list += req ['result' ]
124
136
# Find any character block that is a integer of any length
125
- page_number = re .findall (r'[1-9](?:\d{0,2})(?:,\d{3})*(?:\.\d*[1-9])?|0?\.\d*[1-9]|0' , self .url_dict [self .PAGE ])
137
+ page_number = re .findall (Account .PAGE_NUM_PATTERN ,
138
+ self .url_dict [self .PAGE ])
126
139
print ("page {} added" .format (page_number [0 ]))
127
140
self .url_dict [self .PAGE ] = str (int (page_number [0 ]) + 1 )
128
141
@@ -135,6 +148,7 @@ def get_internal_by_hash(self, tx_hash=''):
135
148
136
149
def update_transactions (self , address , trans ):
137
150
"""
138
- Gets last page of transactions (last 10k trans) and updates current trans book (book)
151
+ Gets last page of transactions (last 10k trans)
152
+ and updates current trans book (book)
139
153
"""
140
154
pass
0 commit comments