首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >绕过"NoneType“对象的属性‘内容’

绕过"NoneType“对象的属性‘内容’
EN

Stack Overflow用户
提问于 2021-04-22 21:07:18
回答 1查看 39关注 0票数 0

我正在练习的网页-‘罗顿番茄’使用美丽汤。然而,我遇到了一个问题,似乎并不是所有的电影都有box_office号或运行时,所以当我尝试运行我的代码时,会有一个"AttributeError",上面写着'NoneType‘。有什么方法可以绕过电影中的'box_office’或这个错误呢?

谢谢!

代码语言:javascript
复制
df_list1 = []

for movie_html in os.listdir(folder):
    with open(os.path.join(folder, movie_html)) as file: 
            soup = BeautifulSoup(file,'lxml')
            release_date = soup.find_all('div', class_='meta-value')[4].find('time').contents[0]
            box_office = soup.find_all('div', class_='meta-value')[6].contents[0].replace('$','').replace(',','')
            runtime = soup.find_all('div', class_='meta-value')[7].find('time').contents[0].strip()[:-len(" minutes")]
            studio = soup.find_all('div', class_='meta-value')[8].find('a').contents[0]

            df_list.append({[![enter image description here][1]][1]
                             'box_office':box_office,
                             'run_time': int(runtime),
                             'studio':studio
                        })
        
        


  [1]: https://i.stack.imgur.com/yopG5.png
EN

回答 1

Stack Overflow用户

发布于 2021-04-22 21:16:29

您需要的是试一试--除了块:

代码语言:javascript
复制
try:
    box_office = soup.find_all('div', class_='meta-value')[6].contents[0].replace('$','').replace(',','')
except AttributeError:
    box_office = None

在python 错误和异常处理异常中阅读更多内容

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

https://stackoverflow.com/questions/67220761

复制
相关文章

相似问题

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