代码:
try:
from urllib2 import urlopen
except ImportError:
from urllib.request import urlopen
import json #导入json,读取json文件
from matplotlib import pyplot as plt
from datetime import datetime #导入datetime处理时间数据
json_url='https://raw.githubusercontent.com/muxuezi/btc/master/btc_close_2017.json'
response=urlopen(json_url) #urlopen打开超链接文件
req=response.read()
with open('btc_close_2017_urllib.json','wb') as f:
f.write(req)
text=json.loads(req) #把内容格式转化成python能处理的格式
n=[] #三个空列表为后面提取出来的数据做存储的地方
date=[]
close=[]
for i in text:
m=int(i['month']) #提取月份数据,用于之后的月份筛选,因为转了整型,所以if条件不需要加引号,如果是字符串就加引号
if m==12:
print(i['month'])
n.append(i) #用append添加到之前定义的空列表中
date.append(datetime.strptime(i['date'],'%Y-%m-%d'))
close.append(float(i['close']))
print(n)
print(date,close)
fig=plt.figure(dpi=80,figsize=(10,6))
plt.plot(date,close)
fig.autofmt_xdate()
plt.show()
https://raw.githubusercontent.com/muxuezi/btc/master/btc_close_2017.json这个文件包含了17年1月到12月的股票每周的收盘价格,以上代码实现的是提取全部数据,再从中精简数据,只提取分析12月份的数据。思路:提取12月份的数据思路因为数据以一个个字典的形式存储,所以主要以如何提取字典数据为依据一步步提取,提取到数据就简单了,直接用画图库的画图函数直接画图就行
红尘往事,一切随风!