请问用BeautifulSoup如何获取p标签内的值

从网上爬下来了一道数学题,不知道该怎样获取里面的值了

 soup = BeautifulSoup(problem_content, 'html.parser')  # 这个problem_content是个从网上爬下来的数学题,里面包含很多的HTML标签        
        # print soup  # 全部是乱码,网上找资料说是没有\xa0这个编码
        # print soup.prettify().replace(u'\xa0', '')  # 安装文档形式输出,正常输出
        # print soup.p  # 输出的p标签内容全部是乱码
        # print soup.encode('gb18030')  # 除中文外全部是 乱码        
        new_soup = soup.prettify().replace(u'\xa0', '')  # new_soup为unicode格式
        s_soup = BeautifulSoup(new_soup, 'html.parser')  # 再次将其转为bs4格式数据
        cont = s_soup.p.encode('gb18030')   # print type(cont)返回 <type 'str'>
        # print type(new_soup)  返回 <type 'unicode'>             
        print cont

print cont返回值是:

 <p>
 如图所示,圆锥 $SO$ 的轴截面 $△$$SAB$ 是边长为$ 4 $的正三角形,$M$为母线 $SB$的中点,过直线 $AM$ 作平面 $β$ $⊥$ 面 $SAB$ ,设 $β$
 <span>
  与圆锥侧面的交线为椭圆 $C$,则椭圆 $C$ 的短半轴
 </span>
 <span style="font-size:12px;line-height:1.5;">
  为(  )
 </span>
</p>

由于这个cont是个str类型的值,请问老师我该如何才能回去这个值

标签内部的值?用cont.string返回错误提示:cont没有string属性

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐