版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目二:爬取豆瓣电影网站目录01任务1使用正则表达式02任务2:使用Xpath爬取豆瓣电影排行榜03任务3:使用BeautifulSoup爬取豆瓣电影TOP250任务1:使用正则表达式
任务描述
初次爬取的网页数据大多是以HTML源代码形式返回到我们的爬虫程序中的,当我们需要从爬取到的源代码中获取到具体所需数据时,就需要用到相应的解析工具了,正则表达式就是众多解析工具中的一个。正则表达式在引入re模块后以字符串前加r的形式存在,通过正则表达式的特殊字符就可以从杂乱的数据中获取到所需的数据。任务目标
了解正则表达式的基本格式0201了解正则表达式的基本概念使用re输出文章中的指定内容0403了解特殊字符的作用1.1.1正则表达式基本概念
正则表达式是一种用于匹配和操作文本的工具,它是由一系列字符和特殊字符组成的字符,用于描述要匹配的文本字符。
正则表达式是处理字符串的强大工具,它有自己特定的语法结构,有了它,实现字符串的检索、替换、匹配验证都不在话下。1.1正则表达式概述1.1正则表达式概述1.1.2常用匹配规则:1.2常用匹配方法1.2.1match方法传入要匹配的字符串以及正则表达式,就可以检测这个正则表达式是否匹配字符串;规则:从字符串的起始位置匹配正则表达式,如果匹配,就返回匹配成功的结果;如果不匹配,就返回None;实例演示:字符串匹配—输出结果:Match对象
group方法:输出匹配到的内容
span方法:输出匹配的范围练习:练习:
对给定字符串进行匹配要求:
使用正则表达式进行匹配,只提取到电话号码结束,并输出匹配范围待匹配字符串:
MyphonenumberindmynameisPenny1.2常用匹配方法思考:刚才我们用match方法可以得到匹配到的字符串内容,如果想从字符串中提取一部分内容,怎么办?(1)匹配目标—使用括号()将想提取的子字符串括起来1.2常用匹配方法(2)通用匹配—.*—“.”可以匹配任意字符(除换行符)
—“*”代表匹配前面的字符无限次—“.”与“*”组合
匹配任意字符1.2常用匹配方法(3)贪婪与非贪婪①贪婪匹配
—.*会匹配尽可能多的字符②非贪婪匹配—.*?
—尽可能匹配少的字符
1.2常用匹配方法③修饰符
—用一些可选标志修饰符来控制匹配的模式
—实例演示,观察输出结果
AttributeError常用修饰符re.I:使匹配对大小写不敏感re.L:做本地化识别(locale-aware)匹配re.M:多行匹配,影响^和$re.S:使匹配包括换行在内的所有字符re.U:根据Unicode字符集解析字符。这个标志影响\w、\W、\b、和\Bre.X:该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解注:在网页匹配中,较为常用的有re.S和re.I1.2常用匹配方法④转义匹配—当遇到用于正则匹配模式的特殊字符时,在前面加反斜线转义一下即可思考:match方法在使用时需要考虑到开头的内容,这在做匹配时并不方便。它更适合用来检测某个字符串是否符合某个正则表达式的规则。如果想要得到匹配内容,怎么办?
1.2常用匹配方法
1.2.2search方法—匹配时会扫描整个字符串,然后返回第一个成功匹配的结果—规则:在匹配时,search方法会依次扫描字符串,直到找到
第一个符合规则的字符串,然后返回匹配内容,如果
搜索完了还没有找到,就返回None。1.2常用匹配方法用法实例:
给定一段待匹配的HTML文本
①提取class为active的li节点内部的超链接包含的歌
手名和歌名
②不加active(也就是匹配不带class为active的节点
内容)
③去掉re.S1.2常用匹配方法1.2.3findall方法—搜索整个字符串,然后返回匹配正则表达式的所有内容—实例:
①获取所有a节点的超链接、歌手和歌名
②获取所有li节点的歌名—返回结果列表类型(需要遍历来依次获取每组内容)
列表中元素:元组类型索引依次取出1.2常用匹配方法1.2.4sub方法—修改文本(去掉节点)—实例引入:去掉文本中的数字—实例用法:
①用sub方法将a节点去掉,只留下文本
②利用findall提取1.2常用匹配方法1.2.5compile方法—将正则字符串编译成正则表达式对象,以便在后面的匹配中
复用(给正则表达式做了一层封装)—实例用法:分别将3个日期中的时间去掉
①借助compile方法将正则表达式编译成一个正则表达
式对象
②借助sub方法思政引导★
思政引导:随着我国数字经济的发展,数据已经成为重要的生产要素。掌握网络爬虫技术不仅是技术能力的体现,更应服务于人民、服务于社会。我们应当践行“技术向善”的理念,推动优秀国产影视文化的传播,增强文化自信。任务小结
本任务围绕正则表达式的常用匹配方法,分任务逐步实现了使用正则表达
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工作票监督制度
- 食堂采购监督制度
- 蒙牛公司内部监督制度
- 综合科监督制度
- 2026年环保袋生产公司环保袋供应商绩效考核管理制度
- 光伏砷化镓组件制造工安全综合强化考核试卷含答案
- 光伏运维人员考勤制度
- 中铁十二局集团考勤制度
- 家长家长义工考勤制度
- 员工食堂打卡考勤制度
- 《调查报告》课件
- 2025届高考语文一轮复习散文阅读考点二概括内容分析形象教学案
- 社区管理第四版 课件全套 汪大海 第1-19章 社区与社区管理 -突发事件与社区应急管理
- 幕墙工程专项施工方案(危大工程专家论证)
- GB/T 36547-2024电化学储能电站接入电网技术规定
- 电商培训机构学员培训合同(2篇)
- SLT824-2024 水利工程建设项目文件收集与归档规范
- 宁乡猪-编制说明
- 食品理化检验技术单选测试题(附答案)
- 2024年江苏法院书记员招聘笔试参考题库附带答案详解
- SJ-T 11798-2022 锂离子电池和电池组生产安全要求
评论
0/150
提交评论