200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 用python读取股票价格_雅虎API获取股票数据--Python

用python读取股票价格_雅虎API获取股票数据--Python

时间:2022-03-05 18:31:41

相关推荐

用python读取股票价格_雅虎API获取股票数据--Python

好久不学Python,计划用Tkinter写一个利用雅虎免费股票查询API的可视化程序

Yahoo股票报价API

获取实时数据

请求url:/d/quotes.csv?s=<股票名称>&f=<数据列选项> , 其中数据列选项由各个请求参数连接而成,详细报价服务器参数请见Yahoo官网。

from urllib import urlopen

import csv #用于解析csv格式,将字符串分割

u = urlopen('/d/quotes.csv?s=GOOG&f=sl1d1t1c1ohgvn')

for row in csv.reader(u):

print row

运行以上代码可以活得股票名称为GOOG的股票的实时数据,包括订单号,最后的价格,日期,时间,变化量,开盘价,当日最高,最低和成交量。参数可以任意添加。报价服务器也支持多支股票一起查询,如 s=YHOO,GOOG,EBAY,AMZN ,返回的结果是每只股票信息占一行。

获取历史数据

参数列表:

s – 股票名称

a – 起始时间,月

b – 起始时间,日

c – 起始时间,年

d – 结束时间,月

e – 结束时间,日

f – 结束时间,年

g – 时间周期。

Example: g=w, 表示周期是’周’。d->’日’(day), w->’周’(week),m->’月’(mouth),v->’dividends only’

一定注意月份参数,其值比真实数据-1。如需要9月数据,则写为08

简单的可视化股票查询#基于python 2.7.10版本

from urllib import urlopen

from Tkinter import *

import csv

def req(): #响应按下button的回调函数

g = entry.get()

print g

if g != '':

url = '/d/quotes.csv?s='+g+'&f=sl1d1t1c1ohgv'

u = urlopen(url)

r = csv.reader(u)

for i in r:

for t in range(7):

la[t].config(text=i[t])

top.geometry('450x250')

Label(top,text='Stock name',font=(30)).grid(row=0,column=0 ) #标签

entry = Entry(top,font=(30)) #输入文本框

entry.grid(row=0,column=2)

Label(top,text='Stock ticker symbol',font=(30)).grid(row=1,column=0) #选择按钮,多选之一

Label(top,text='Price of last trade',font=(30)).grid(row=2,column=0)

Label(top,text='Last trade date',font=(30)).grid(row=3,column=0)

Label(top,text='Time of last trade',font=(30)).grid(row=4,column=0)

Label(top,text='Last opening price',font=(30)).grid(row=5,column=0)

Label(top,text='Daily high price',font=(30)).grid(row=6,column=0)

Label(top,text='Daily low price',font=(30)).grid(row=7,column=0)

la1 = Label(top,font=(30))

la2 = Label(top,font=(30))

la3 = Label(top,font=(30))

la4 = Label(top,font=(30))

la5 = Label(top,font=(30))

la6 = Label(top,font=(30))

la7 = Label(top,font=(30))

la = [la1,la2,la3,la4,la5,la6,la7]

la1.grid(row=1,column=2)

la2.grid(row=2,column=2)

la3.grid(row=3,column=2)

la4.grid(row=4,column=2)

la5.grid(row=5,column=2)

la6.grid(row=6,column=2)

la7.grid(row=7,column=2)

Button(top,text='Submit',font=(35),command=req).grid(row=8,column=1)

top.mainloop()

运行后在文本输入框中输入GOOG,得到如下结果

IBM的也可以查询到

有木有很神奇呢,其实很多大型网站都会提供优质的API函数,什么百度地图API,淘宝API之类的,利用这些数据可以写出方便自己获取资源的脚本。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。