0

我到处寻找,但似乎找不到任何可以解决我问题的东西。我对 Python 还很陌生,所以也许我没有正确理解某些东西。我不断收到的错误是“AttributeError:元素实例没有属性'firstchild'”

# Imports
import urllib2
import re
from xml.dom import minidom


def main():
    pass

if __name__ == '__main__':
    main()


# Get RSS feed source
briefingRSS = minidom.parse(urllib2.urlopen('http://rss.briefing.com/Investor/RSS/UpgradesDowngrades.xml'))

# Find each Upgrade and Downgrade listed in XML file
channel = briefingRSS.getElementsByTagName("channel")[0]
items = channel.getElementsByTagName("item")

# Get info from each item
for item in items:
    getTicker = item.getElementsByTagName("title")[0].firstchild.data
    ticker = str(getTicker[1].split("<")[0])
    print ticker

编辑:好的,感谢您指出 firstchild 中的 C。但事实证明,该程序每行输出一个字母。我正在尝试捕获一个代码,有时最多可以有 5 个字符。我怎样才能得到它给我一个完整的股票行情?

以下是项目当前 XML 的片段:

<image>
<url>http://rss.briefing.com/favicon.ico</url>
<title>Briefing.com - Upgrades Downgrades Calendar</title>
<link>
http://www.briefing.com/Investor/Public/Calendars/UpgradesDowngrades.htm
</link>
</image>
4

1 回答 1

2

firstChild属性在中间需要一个大写字母“C”。

文档不是很清楚,因为它是根据 DOM 标准以及如何将标准映射到 Python 编写的,所以它可以帮助打开minidom.py源代码并查看它定义和使用的方法和属性。

于 2013-11-14T11:09:02.447 回答