我正在尝试抓取一个网站,并获得通过requests
和json
导入获得的非常长的矩阵所需的所有数据。
我在获取任何输出时遇到问题。
是因为requests.get()
中的两个字符串合并了吗?
以下是有问题的部分,所有使用的东西都是在代码的开头声明的。
balance=[]
for q in range(len(DepositMatrix)):
address= requests.get('https://ethplorer.io/service/service.php?data=' + str(DepositMatrix[q][0]))
data4 = address.json()
TokenBalances = data4['balances'] #returns a dictionary
balance.append(TokenBalances)
print(balance)
DepositMatrix示例 - 包含4个元素的列表列表[[string , float, int, int]]
[['0x2b5634c42055806a59e9107ed44d43c426e58258', 488040277.1535826, 660, 7103],
['0x05ee546c1a62f90d7acbffd6d846c9c54c7cf94c', 376515313.83254075, 2069, 12705]]
我认为错误在这部分:
requests.get('https://ethplorer.io/service/service.php?data=' + str(DepositMatrix[q][0]))
这种改变也没有帮助:
requests.get('https://ethplorer.io/service/service.php?data=' + DepositMatrix[q][0])
答案 0 :(得分:1)
就像我在评论中所说,我尝试了你的代码,它对我有用。但我想强调一些可以帮助您的代码更清晰的事情:
import requests
import pprint
DepositMatrix = [['0x2b5634c42055806a59e9107ed44d43c426e58258', 488040277.1535826, 660, 7103],
['0x05ee546c1a62f90d7acbffd6d846c9c54c7cf94c', 376515313.83254075, 2069, 12705]]
balance=[]
for deposit in DepositMatrix:
address = requests.get('https://ethplorer.io/service/service.php?data=' + deposit[0])
data4 = address.json()
TokenBalances = data4['balances'] #returns a dictionary
balance.append(TokenBalances)
pprint.pprint(balance)
q
),而是使用此q
从列表中获取信息,它更简单到直接获取每个元素(for deposit in DepositMatrix:
)pprint
模块来简化数据的可视化。