是把从服务器接口读取到的json天气预报数据画制成折线。现在把从json中的天气预报数据自动写入到Excel表格中。
程序代码:
import openpyxl
import json
import urllib.request
def get_weather_json_python股票交易接口,data(city_code):
url = 'http://t.weather.sojson.com/api/weather/city/'+city_code
response = urllib.request.urlopen(url)
content = response.read().decode('utf-8')
return content
def get_forecast_python股票交易接口,data(content):
data = content['data']
return data['forecast']
#清洗数据。过滤℃
def get_pure_temperature(temp):
a, b = temp.split()
return b.strip().strip('℃')
#数据写入到Excel。
def write_data_to_excel(date_time, high, low):
wb = openpyxl.load_workbook('test.xlsx')
sheet = wb.get_sheet_by_name(wb.sheetnames[0])
for i in range(1, len(date_time)):
for k in range(1, 4):
c = sheet.cell(column=k, row=i)
if k == 1:
c.value = date_time[i]
if k == 2:
c.value = high[i]
if k == 3:
c.value = low[i]
wb.save('test.xlsx')
#101270101,天气预报中成都的代码。
city_code = '101270101'
content = json.loads(get_weather_json_data(city_code))
data = get_forecast_data(content)
high, low, date_time = [], [], []
for obj in data:
h = obj['high']
high.append(get_pure_temperature(h))
l = obj['low']
low.append(get_pure_temperature(l))
date_time.append(obj['ymd'])
write_data_to_excel(date_time, high, low)
文章为作者独立观点,不代表股票交易接口观点