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
一般建议:通常最好使用['临时文件module'(http://docs.python.org/library/tempfile.html)来处理临时文件,因为它会避免冲突,当删除它完成了等等。此外,你应该使用'“\\ \\温度weather.xml”'或'R“的\ Temp \ weather.xml”',否则它试图把那些反斜杠字符转义码;你走运的是'\ T'和'\ w'无效逃逸,所以它的工作原理,但如果你试图'\ t'或'\ N'它会以令人惊讶的方式打破。如果你使用[lxml](http://lxml.de/),它会为你处理所有这些;你可以“解析”一个URL。 – Dougal 2012-04-19 18:47:21
最后两个循环中存在缩进问题... – jadkik94 2012-04-19 18:49:36