2016-10-10 44 views
4

我使用feed解析器获取rss对象。当我运行我得到一个列表索引超出范围错误存在的索引

live_leak.links 

我得到

[{'type': 'text/html', 'rel': 'alternate', 'href': 
'http://www.liveleak.com/view?i=abf_1476121939'}, 

{'type': 'application/x-shockwave-flash', 'rel': 'enclosure', 'href': 
'http://www.liveleak.com/e/abf_1476121939'}] 

但是当我尝试这个

live_leak.links[1] 

我得到列表索引超出范围,你要知道这是较早的工作,然后突然这没有奏效。我在我的代码中有这个,它花了我几个小时才找到,因为我没有意识到这是不可行的。如果没有人知道我会做一个字符串替换为黑客,但我宁愿做已经工作的东西。

这也适用

live_leak[0] 

返回

[{'type': 'text/html', 'rel': 'alternate', 'href': 
'http://www.liveleak.com/view?i=abf_1476121939'}] 

这是奇怪,因为其他人会无法正常工作

编辑

def pan_task(): 
     url = 'http://www.liveleak.com/rss?featured=1' 
     name = 'live leak' 
     live_leaks = [i for i in feedparser.parse(url).entries] 
     the_count = len(live_leaks) 
     ky = feedparser.parse(url).keys() 
     oky = [i.keys() for i in feedparser.parse(url).entries][:12] # shows what I can pull 

     try: 
      live_entries = [{ 
          'html': live_leak.links, 
          'href': live_leak.links[0]['href'], 
          'src': live_leak.media_thumbnail[0]['url'], 
          'text': live_leak.title, 
          'comments': live_leak.description, 
          'url': live_leak.links[0]['href'], 
          'embed': live_leak.links[1]['href'], 
          'text': live_leak.title, 
          'comments': live_leak.description, 
          'name': name, 
          'url': live_leak.link, # this is the link to the source 
          'author': None, 
          'video': False 
          } for live_leak in live_leaks] 
     except IndexError: 
      print('error check logs') 
      live_entries = [] 

     # for count, elem in enumerate(live_entries): 
     #  the_html = requests.get(live_entries[count]['url']) # a specific text 

     return print(live_entries[0]) 
+0

如果它表示索引超出范围,则该元素不存在。 – TigerhawkT3

+0

重新编辑:'print()'返回'None' – brianpck

回答

0

你可以索引live_leak,但live_leak.links似乎是某种其他类型的构造,返回的元素live_leak。尝试live_leak [1],也许?

0

一个正在寻找live_leak下的链接,另一个只是查看live_leak本身。

例如: live_leak [1]

应返回: [{ '类型': '应用程序/ x-冲击波闪光', '相对': '外壳', 'href' 属性: ' http://www.liveleak.com/e/abf_1476121939'}]

相关问题