am_thinking 2015-10-11 14:32 采纳率: 50%
浏览 10828
已采纳

请问用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条回答 默认 最新

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题