python爬虫入门教程(二):开始一个简单的爬虫python爬虫入门41
下载地址 https://share.weiyun.com/0UhC6msn
资料目录 30个小时搞定Python网络爬虫视频课程(全套详细版) Python网络爬虫工程师系列培训视频课程(65集全) 廖雪峰商业爬虫(含课件、案例和练习) 零基础Python实战 四周实现爬虫网站 《Python 3网络爬虫开发实战 》崔庆才著.pdf 《Python网络爬虫从入门到实践》 庄培杰编著.pdf Python 3爬虫、数据清洗与可视化实战_零一等编著.pdf Python3网络爬虫数据采集 陶俊杰 翻译.pdf Python爬虫开发与项目实战 范传辉 编著.pdf Python爬虫大数据采集与挖掘-微课视频版 曹剑平 编著.pdf python网络爬虫从入门到实践 唐松等.pdf 网络爬虫-Python和数据分析 王澎著.pdf 用Python写网络爬虫 李斌 翻译.pdf 自己动手写网络爬虫 罗刚等 编著.pdf Python项目案例开发从入门到实战:爬虫、游戏和机器学习 by 郑秋生 夏敏捷 举例 正则表达式 学过编程的读者或多或少都听说过正则表达式,但是大部分人都对此非常畏惧,而且觉得使用时到网上搜索就行了,不用浪费时间自己编写。但是有个问题是你去爬取别人的数据时,不一定有满足需求的正则表达式,大多数情况下要自己动手编写。 其实正则表达式并没有想象中的那么难,主要是练得不够多。除了了解字符串相关的处理函数外,掌握正则表达式也非常必要。本节我们来学习正则表达式在 Python 中的应用。
re 模块 Python 中通过 re 模块使用正则表达式,该模块提供的几个常用方法如下。 1. 匹配 re.match(pattern, string, flags=0) 参数:匹配的正则表达式,要匹配的字符串,标志位(匹配方法)尝试从字符串的开头进行匹配,匹配成功会返回一个匹配的对象,类型是<class '_sre.SRE_Match'>。 re.search(pattern, string, flags=0) 参数:同 match 函数,扫描整个字符串,返回第一个匹配的对象,否则返回 None。 注意:match 方法和 search 方法的最大区别是,match 如果开头就不和正则表达式匹配,则直接返回 None,而 search 则是匹配整个字符串。 2. 检索与替换 re.findall(pattern, string, flags=0) 参数:同 match 函数,遍历字符串,找到正则表达式匹配的所有位置,并以列表的形式返回。 re.finditer(pattern, string, flags=0) 参数:同 match 函数,遍历字符串,找到正则表达式匹配的所有位置,并以迭代器的形式返回。 re.sub(pattern, repl, string, count=0, flags=0) 参数:repl 为替换的字符串,可以是函数,把匹配到的结果进行一些转换;count 为替换的最大次数,默认值 0 代表替换所有的匹配。找到所有匹配的子字符串,并替换为新的内容。 re.split(pattern, string, maxsplit=0, flags=0) 参数:maxsplit 设置分割的数量,默认值 0,对所有满足匹配的字符串进行分割,并返回一个列表。 3. 编译成 Pattern 对象 对于会多次用到的正则表达式,我们可以调用 re 的 compile()方法编译成 Pattern 对象,调用的时候直接使用 Pattern 对象.xxx 即可,从而提高运行效率。flags(可选标志位)如表3.4 所示。另外,多个标志可通过按位 OR(|)进行连接,如 re.I|re.M。 表 3.4 正则可选标志位 修 饰 符 描 述 re.I 使匹配对大小写不敏感 re.L 做本地化识别(locale-aware)匹配 re.M 多行匹配,影响^和$ re.S 使. 匹配包括换行在内的所有字符 re.U 根据 Unicode 字符集解析字符。这个标志影响\w、\W、\b、\B re.X 该标志通过给予更灵活的格式,以便将正则表达式写得更易于理解
|