J'essaie d'obtenir le programme de demander à l'utilisateur pour le code de l'aéroport et l'année (peut être n'importe quoi - il ne doit pas être juste ou quoi que ce soit spécifique Mon professeur veut juste demander et imprimer les données) Voici le code que j'ai.Python Wunderground données raw_input
import urllib2
from bs4 import BeautifulSoup
# Create/open a file called wunderdata.txt which will be a CSVfile
f = open('wunderdata.txt', 'w')
# Iterate through months and day
for m in range(1, 13):
for d in range(1,32):
# Check if already processed all days in the month
if (m == 2 and d> 28):
break
elif (m in[4, 6, 9, 11] and d > 30):
break
# Open wunderground.com url
airport = str(raw_input("Enter airport code: "))
year = str(raw_input("Enter year: "))
timestamp = '2009' + str(m) + str(d)
print ("Getting data for ") + timestamp
url = "http://www.wunderground.com/history/airport/" + airport + "/" + year + "/" + str(m) + "/" + str(d) + "/DailyHistory.html?"
page = urllib2.urlopen(url)
# Get temperature from page
soup = BeautifulSoup(page, "html.parser")
#the following two lines are the original (textbook) and first attempt to fix
# dayTemp = soup.body.wx-value.b.string
dayTemp = soup.findAll(attrs={"class":"wx-value"})[6].get_text()
seaLevel = soup.findAll(attrs={"class":"wx-value"})[16].get_text()
# Format month for timestamp
if len(str(m)) < 2:
mStamp = '0' + str(m)
else:
mStamp = str(m)
# Format day for timestamp
if len(str(d)) < 2:
dStamp = '0' + str(d)
else:
dStamp = str(d)
# Build timestamp
#timestamp = '2009' + mStamp + dStamp
# Write timestamp and temperature to file
f.write(timestamp + ',' + dayTemp + " " + "Sea Level Pressure: " + seaLevel + '\n')
# Done getting data! Close file.
f.close()
quoi qu'il en soit, voici ce qui arrive lorsqu'il est entré:
python get-weather-data.py
Enter airport code: KBUF
Enter year: 2009
Getting data for 200911
Enter airport code: KBUF
Enter year: 2009
Getting data for 200912
Enter airport code: KBUF
Enter year: 2009
Getting data for 200913
Et je veux que ce soit
python get-weather-data.py
Enter airport code: KBUF
Enter year: 2009
Getting data for 200911
Getting data for 200912
Getting data for 200913
Quelqu'un aide! Je suis un débutant donc je ne sais pas beaucoup sur python mais j'apprécierais beaucoup aide :)