[英]python live data in excel
此代码打印实时数据,但我希望 excel 中的 output 只有这样的价格变化--->
象征 | 价格 |
---|---|
DOGEUSDT | 0.0633400 |
比特币USDT | 21013.040 |
LTCUSDT | 60.9000 |
代码---->>> `
import pandas as pd
import requests
import json
ltp_data= []
crypto = {"BTCUSDT", "LTCUSDT", "DOGEUSDT"}
def live_ltp():
responses = []
for i in crypto:
key = "https://api.binance.com/api/v3/ticker/price?symbol="
url = key+i
response = requests.get(url)
Ltp = response.json()
ltp_data.append(Ltp)
responses.append(Ltp)
return responses
while True:
print(str(live_ltp()))
`
尝试:
while True:
stats = pd.DataFrame(live_ltp())
with pd.ExcelWriter('Output.xlsx') as excel_writer:
stats.to_excel(excel_writer, sheet_name='live_ltp', index=False)
也许最后有一个 time.sleep,所以它也不会向 API 发送垃圾邮件。
如果我理解得很好,您想使用 while 循环更新 excel 文件。 如果您将请求放入 dataframe 中,则使用 openpyxl 很容易完成。 只要文件关闭,以下内容就可以很好地工作。
import openpyxl
try:
with pd.ExcelWriter(path, engine = 'openpyxl', mode = 'a', if_sheet_exists = 'overlay') as writer:
YourOutputDataFrame.to_excel(writer, sheet_name = sheet_name, index = False) #Write output in a specific sheet (by name or index)
writer.book.close() #Close (and save) Excel file
except:
pass
希望这可以帮助。 如果需要,请随时询问有关格式等的更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.