Форум сайта python.su
for i in par: i = par[1] if i[-1] == 'Z': timeUTC = int(i[2:4]) strtime = str(timeUTC) st = strtime+':'+i[4:6] break #у тебя после определения времени идет выход из цикла
Офлайн
последнее китайское предупреждение - пиши функции
#!/usr/bin/env python # coding:utf8 import requests from html2text import html2text import csv import sys def get_metar(url,ikao): page = requests.get(url+ikao).text lines = html2text(page).split('\n') return lines def parse_metar(ikao,lines): lst =[['OVC',1.0],['BKN',0.75],['SCT',0.4],['FEW',0.15],['NSC',0.0],['SKC',0.0]] for line in lines: if not ikao in line: continue i = line.split()[1] if i[-1] != 'Z': break timeUTC = int(i[2:4]) strtime = str(timeUTC) st = strtime+':'+i[4:6] for i in lst: if i[0] in line: return ikao +': '+ st +' '+ str(i[1]) return line if __name__=="__main__": filename = "stations.txt" url0 ='http://aviationweather.gov/metar/data?ids=' fd = open(filename, "r") reader = csv.reader(fd, delimiter="\t") for row in reader: l = get_metar(url0,row[0]) result = parse_metar(row[0],l) print result fd.close()
Отредактировано vic57 (Окт. 19, 2016 19:38:05)
Офлайн
vic57
последнее китайское предупреждение - пиши функции
Офлайн
Tenebrasсначала нужно составить блок-схему и идти от нее, а потом код писать
Начинаю осиливать функции. Если будут вопросы - буду кричать сюда.
def load_stations(filename,url)
#загружает список станций
def parse_stations(filename,list_param)
#возвращает список станций из файла по заданным параметрам
def get_metar(url,station_list)
#возвращает список metar-данных
def parse_metar(metar_string)
# парсит metar-данные
Отредактировано vic57 (Окт. 21, 2016 00:44:53)
Офлайн