python - 将报价流式传输到 Excel
问题描述
我正在尝试使用 python 在 excel 中使用流式报价。请记住,这是我第一次尝试学习 python。我已经能够从 IexFinance API 中获取引号,并从那里通过 Python 将数据保存到 CSV 中,然后我会创建一个宏以每隔几秒钟在 excel 中刷新 CSV。但是,似乎 csv 需要一段时间才能更新,并且不像其他网站上的流式报价那样流畅。那么首先,有没有一种更简单的方法可以通过python将流式报价导入excel?有什么方法可以让我每秒更新一次引号,还是 excel 或 python 延迟了引号的更新速度?
amd.get_price()
import pandas
import pandas as pd
from iexfinanace.stocks import Stock
import csv
import time
batch=Stock(['amd', 'tsla'], output_format='pandas')
df=batch.get_price()
df.to_csv('stock.csv')
#loop
starttime=time.time()
while True:
batch=Stock(['amd', 'tsla'], output_format='pandas')
df=batch.get_price()
df.to_csv('stock.csv')
time.sleep(0.05-((time.time()-starttime) % 0.05))
解决方案
您可以创建一次 csv,然后对其进行更新,使用 pandas、xlwt 或任何其他类似的模块
以python为例:
import pandas
import pandas as pd
from iexfinanace.stocks import Stock
import csv
import time
batch=Stock(['amd', 'tsla'], output_format='pandas')
df=batch.get_price()
df.to_csv('stock.csv')
#loop
starttime=time.time()
batch=Stock(['amd', 'tsla'], output_format='pandas')
df=batch.get_price()
df.to_csv('stock.csv')
while True:
batch=Stock(['amd', 'tsla'])
df=batch.get_price()
df.to_csv('stock.csv')
time.sleep(0.05-((time.time()-starttime) % 0.05))
xl_spreadsheet = pd.read_csv(Location,header=None)
xl_spreadsheet['{INSERT LOCATION}'].value = {batch insert for var of amd}
xl_spreadsheet['{INSERT LOCATION}'].value = {batch insert for var of tsla}
推荐阅读
- python-3.x - `FileNotFoundError: No such file: '/content/Weeds_Detectiontrain/1.png'` 如何写入正确的目录
- azure - 使用 Azure 服务总线 API 管理队列的授权失败
- spring-boot - 验证前端发送的令牌
- python - 为什么while循环冻结api gui
- azure-iot-edge - IoT Edge 上的 MQTT 支持
- html - FontAwsome 图标未显示在 IE11 HTTPS URL 中
- python - EXE 和文件的不同图标
- r - 如何在 R 中将 .rds 文件转换为 .csv 而不会丢失特殊字符?
- vb.net - vb.net中的slove错误空图片datagridview
- ios - 如何在 React Native 未发布的应用程序中识别 Bundle ID 和 App Store ID