加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 对于存在的索引,我得到的List索引超出范围错误

发布时间:2020-12-20 13:14:26 所属栏目:Python 来源:网络整理
导读:我使用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:/
我使用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','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'],'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])

解决方法

您可以为live_leak编制索引,但live_leak.links似乎是返回live_leak元素的其他类型的构造.试试live_leak [1]吧?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读