qq_43721455 2021-06-06 22:25 采纳率: 50%
浏览 22
已采纳

python爬虫问题

obj = re.compile(r'<li>.*?<span class="title">(?P<name>.*?)'
                 r'</span>.*?<p class="">.*?<br>(?P<year>.*?)&nbsp.*?</span '
                 r'class="rating_num" property="v:average">(?P<star>.*?)</span>', re.S)

obj = re.compile(r'<li>.*?<span class="title">(?P<name>.*?)</span>' , re.S)
obj = re.compile(r'</span>.*?<p class="">.*?<br>(?P<year>.*?)&nbsp.*?</span' , re.S)
obj = re.compile(r'class="rating_num" property="v:average">(?P<star>.*?)</span>.*?', re.S)

爬取网页内容时,用第一种方法爬不到东西,但是我将它们分开写之后是能爬到东西的,请问是什么问题

  • 写回答

2条回答 默认 最新

  • 小P聊技术 2021-06-06 22:27
    关注

    因为你的正则匹配写的太长,可能匹配不到你想要的html,但是你分开之后,匹配的内容相对少,出现错误的几率就低,建议分段匹配

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入
  • ¥20 XP系统在重新启动后进不去桌面,一直黑屏。
  • ¥15 opencv图像处理,需要四个处理结果图
  • ¥15 无线移动边缘计算系统中的系统模型
  • ¥15 深度学习中的画图问题
  • ¥15 java报错:使用mybatis plus查询一个只返回一条数据的sql,却报错返回了1000多条
  • ¥15 Python报错怎么解决
  • ¥15 simulink如何调用DLL文件
  • ¥15 关于用pyqt6的项目开发该怎么把前段后端和业务层分离
  • ¥30 线性代数的问题,我真的忘了线代的知识了