weixin_45947411 2019-12-31 15:41
浏览 856

用BS爬取网页内容之后提取标签属性,显示AttributeError: 'NoneType' object has no attribute 'text'。用print可以成功提取出文本内容,放在循环里就出错。

用BS爬取网页内容之后标签属性一直出错,显示AttributeError: 'NoneType' object has no attribute 'text'

我用print在循环之前试过是可以成功提取出文本内容的,不知道为什么在循环里就不行。求大神解惑!

#s = content[0].find('h5',class_="result-sub-header")
#print(s.text.strip())

#遍历content,取出结果
#因为find_all返回的是一个list,再对list用find_all时,需要指定元素[0]
for i in range(len(content)): 
    #提取标题
    t = content[i].find('a',class_="title")
    title = t.text.strip()
    #提取链接
    url = 'https://www.forrester.com'+t['href']
    #提取摘要
    s = content[i].find('h5',class_="result-sub-header")
    summary = s.text.strip()

    #将提取的内容放在列表paper中
    paper = [title,'Cloud Migration',url,summary]
    #把每个paper加到paperlist
    paperlist.append(paper) 
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥25 activeMq在同服务器centos8下消费很慢
    • ¥15 c++多文件编译报错:undefined reference to
    • ¥20 为什么zynq CAN IP 无法进入config配置模式,XCan_SelfTest函数失效?
    • ¥15 Pycharm中程序直接运行可以但进入调试报错
    • ¥15 MATLAB动图问题
    • ¥15 有段代码不知道怎么理解,const isToken = (config.headers || {}).isToken === false
    • ¥15 我的显卡支持CUDA最高版本是12.3,这个版本也支持VS 2022 17.0这种情况下如果我想下载CUDA11.8,需要下载旧版本的VS2022吗
    • ¥15 pointnet2包安装
    • ¥20 射频功率问题,解答者有酬谢!
    • ¥80 构建降雨和积水的预测模型