初学python爬虫,尝试爬取百度贴吧中的内容,在获取标题时报错。

具体代码如下:

    # 获取帖子标题def getTitle(self):page = self.getPage(1)pattern = re.compile('<h3 class="core_title_txt.*?>(.*?)</h3>', re.S)result = re.search(pattern, page)if result:return result.group(1).strip()else:return None

debug之后发现是re.search中的问题,点进去看详细介绍:

def search(pattern, string, flags=0):"""Scan through string looking for a match to the pattern, returninga match object, or None if no match was found."""return _compile(pattern, flags).search(string)

通过字符串搜索匹配模式的匹配项,返回匹配对象,或者没有找到匹配。

而出现“except string or buffer”一般是匹配的pattern和需要在其中寻找匹配的string类型不一致,改动如下:

.read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中,这样类型就匹配了。

正则表达式也可以改成注释中的那样,暂时没有发现有什么影响。

如果是.readlines()和findall()的组合,可以去看看这篇问答点击打开链接,可能可以帮到你。

个人见解,如有不对请多指正。

解决re.search()时出现excepted string or buffer问题相关推荐

  1. Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源

    Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源 在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等.今天就给大家介绍一个 Spri ...

  2. 解决NSTextContainer分页时文本截断问题

    解决NSTextContainer分页时文本截断问题 NSTextContainer与NSLayoutManager配合使用可以将大文本文件分页,但是,分页过程中会遇到问题,显示字符被截断的问题:) ...

  3. 【javaScript】encodeURI来解决URL传递时为什么需要进行两次encodeURI编码

    encodeURI来解决URL传递时为什么需要进行两次encodeURI编码 文章来源于https://blog.csdn.net/u012027337/article/details/5212647 ...

  4. Delphi 使用双缓冲解决图片切换时的闪烁问题 good

    Delphi 使用双缓冲解决图片切换时的闪烁问题 good 参考文章: (1)Delphi 使用双缓冲解决图片切换时的闪烁问题 good (2)https://www.cnblogs.com/find ...

  5. 解决ArcMap启动时只停留在初始化界面的方法

    解决ArcMap启动时只停留在初始化界面的方法 参考文章: (1)解决ArcMap启动时只停留在初始化界面的方法 (2)https://www.cnblogs.com/luwl/p/6899342.h ...

  6. 解决Tomact启动时问题 Port 8080 required by Tomcat v8.0 Server at localhost is already in use.

    解决Tomact启动时问题 Port 8080 required by Tomcat v8.0 Server at localhost is already in use. 参考文章: (1)解决To ...

  7. 解决robotframework安装时提示wxPython not found问题

    解决robotframework安装时提示wxPython not found问题 参考文章: (1)解决robotframework安装时提示wxPython not found问题 (2)http ...

  8. 解决minikube启动时若干问题

    解决minikube启动时若干问题 参考文章: (1)解决minikube启动时若干问题 (2)https://www.cnblogs.com/zhongpan/p/8630727.html 备忘一下 ...

  9. 完美解决Invalid layout of java.lang.String at value问题的方法

    完美解决Invalid layout of java.lang.String at value问题的方法 参考文章: (1)完美解决Invalid layout of java.lang.String ...

  10. 解决MyEclipse2015启动时:Java was started but returned exit code=1问题

    解决MyEclipse2015启动时:Java was started but returned exit code=1问题 参考文章: (1)解决MyEclipse2015启动时:Java was ...

最新文章

  1. java服务器gc停顿_如何避免后台IO高负载造成的长时间JVM GC停顿(转)
  2. 【行走的Offer收割机】记一位朋友斩获BAT技术专家Offer的面试经历
  3. Jenkins Android gradle只能打包app-release-unsigned.apk
  4. 12864液晶——读写、划点、划线、汉字、32*16的字符
  5. Python基础教程:set集合的教程
  6. python爬虫---实现项目(二) 分析Ajax请求抓取数据
  7. Extjs 动态改变列名
  8. mpvue微信小程序http请求-fly.js
  9. 大叔手记(21):汤姆大叔博客园开博100天总结
  10. Android人脸识别开发入门--基于虹软免费SDK实现
  11. 注册页面的JSON响应方式详细分析(与前端页面交互方式之一)
  12. mysql 传输表空间_Oracle传输表空间总结
  13. 计算机原理与接口专科,春福师计算机原理与接口关键技术在线作业二.doc
  14. hdu 1281棋盘游戏(二分匹配)
  15. 4.安全与NAT策略-1
  16. “华为杯”第十七届中国研究生数学建模竞赛2020 —— B题
  17. 比特球云盘,离线播放云下载探析
  18. 19.数学与经济管理
  19. 手游后劲不足,“体验”会是端游发展的一张王牌吗?
  20. 开机所有网卡全部down掉解决方法,ens33 down

热门文章

  1. 中标麒麟(NeoKylin7)下达梦数据库(DM8)的安装部署
  2. iOS 图片编辑——缩放剪切
  3. 使用企业微信做微信消息通知
  4. AST实战|某CloudFlare 5秒盾第一层混淆代码一键还原思路分享
  5. matlab一元方差分析方法,多元方差分析matlab程序.doc
  6. AI:全球人工智能领域代表性学者简介及大佬们的关系圈—向大佬们学习(国外内分开,持续更新/建议收藏)
  7. chrome 清理缓存
  8. 浏览器 文本转语音播放 Demo [SpeechSynthesis]
  9. split 分割 字符串(分隔符如:* ^ : | , .) 及注意点
  10. Kafka的消息可靠性(防止消息丢失)