0
Я пытаюсь изучить Python. Мой единственный опыт - это Applescripting, и это не так просто узнать.Сценарий для анализа погоды
Я пытаюсь разобрать xml-сайт погоды, и до сих пор у меня есть данные, которые мне нужны, но я не могу понять, как получить его в списке, чтобы обработать его дальше. Может ли кто-нибудь помочь?
from BeautifulSoup import BeautifulSoup
import xml.etree.cElementTree as ET
from xml.etree.cElementTree import parse
import urllib2
url = "http://www.weatheroffice.gc.ca/rss/city/ab-52_e.xml"
response = urllib2.urlopen(url)
local_file = open("\Temp\weather.xml", "w")
local_file.write(response.read())
local_file.close()
invalid_tags = ['b', 'br']
tree = parse("\Temp\weather.xml")
stuff = tree.findall("channel/item/description")
item = stuff[1]
parsewx = BeautifulSoup(stuff[1].text)
for tag in invalid_tags:
for match in parsewx.findAll(tag):
match.replaceWithChildren()
print parsewx
Общие рекомендации: обычно использовать модуль '' tempfile module '(http://docs.python.org/library/tempfile.html) для обработки временных файлов, поскольку он избегает конфликтов и удаляет их, когда это сделано и так далее. Кроме того, вы должны использовать '' \\ Temp \\ weather.xml "или' r "\ Temp \ weather.xml" ', потому что в противном случае он пытается обрабатывать эти обратные символы как escape-коды; вам повезло, что '\ T' и' \ w' не являются допустимыми экранами, и поэтому они работают, но если вы попытаетесь '\ t' или' \ n', это будет неожиданно разбито. Если вы используете [lxml] (http://lxml.de/), он будет обрабатывать все это для вас; вы можете просто проанализировать URL-адрес. – Dougal
В последних двух проблемах с отступом существует проблема с отступом ... – jadkik94