首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IndexError:超出范围的列表索引未得到解决

IndexError:超出范围的列表索引未得到解决
EN

Stack Overflow用户
提问于 2017-06-08 16:23:24
回答 1查看 273关注 0票数 0
代码语言:javascript
复制
import glob
from bs4 import BeautifulSoup
f = open('csvfile.csv','w')
for file in glob.glob('*.htm'):
    print 'Processing', file
    for y in range(0,3):          
        for x in range(0, 6): 
            soup = BeautifulSoup(open(file).read())
            all_string=soup.find_all("h2")[x].get_text()
            #stack=[]
            #acct.write(", ".join(stack) + '\n')
            f.write(all_string) 
            f.write('\n')
            print(all_string)
    x=0  
f.close() 

输出-

处理由氮衍生的铁氮化物和酰亚胺形成的碱控制的碳-氢裂解或氮-碳键-美国化学学会杂志.htm

摘要

辅助信息

环境条件下钒催化分子二氮还原为硅胺

回溯(最近一次调用): 文件"",第1行,在runfile('/Users/ROXX/Desktop/project/csv1.py',wdir='/Users/ROXX/Desktop/project') 文件"/Users/ROXX/anaconda/lib/python2.7/site-packages/spyder/utils/site/sitecustomize.py",行880,在runfile中(文件名,命名空间) 文件"/Users/ROXX/anaconda/lib/python2.7/site-packages/spyder/utils/site/sitecustomize.py",第94行,在builtins.execfile(文件名,*where)中 文件"/Users/ROXX/Desktop/project/csv1.py",第17行,在all_string=soup.find_all("h2")x.get_text()中 IndexError:列出超出范围的索引

EN

回答 1

Stack Overflow用户

发布于 2017-06-08 18:29:25

造成此错误的原因可能是在您正在处理的文件中(在第二个循环中)出现的h2少于7次。在"all_string“上重复而不是固定的间隔可能会解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44440986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档