网站首页  词典首页

请输入您要查询的论文:

 

标题 正则表达式在python爬虫中的应用
范文

    苻玲美

    

    摘要:数据是新一轮技术革命最重要的生产资料,爬虫是获取数据最直接的方式,但爬出来的数据代码夹杂文字,面对大量杂乱的代码夹杂信息,通过正则表达式检索匹配出有用的信息,过滤无用的数据。本文介绍正则表达式在python爬虫中的应用,总结python爬虫中正则表达式的应用技巧。

    关键词:爬虫;python;正则表达式;数据

    中图分类号:TP311? ? 文献标识码:A

    文章编号:1009-3044(2019)25-0253-02

    网络爬虫是一个非常注重实践性而且实用性很强的编程技能,写爬虫分析股票走势,上链家爬房源分析房价趋势,爬知乎、爬豆瓣、爬新浪微博、爬影评,等等。人工智能时代,对数据的依赖越来越重要,数据主要的来源就是通过爬虫获取,通过爬取获取数据可以进行市场调研和数据分析。但爬虫时收集回来的一般是字符流,我们需要从中筛选有用的信息,而用正则表达式可以轻松地完成这一任务。

    1正则表达式与爬虫

    爬虫四个主要步骤:

    · 明确目标 (要知道你准备在哪个范围或者网站去搜索)

    · 爬 (将所有的网站的内容全部爬下来)

    · 取 (获取有用信息、去掉没用的数据)

    · 处理数据(按照我们想要的方式存储和使用)

    那么在取(文本过滤这块)最强大的就是正则表达式,更是python爬虫世界必不可少利器。

    什么是正则表达式,python爬虫使用正则表达式的方法。

    正则表达式(Regular Expression,简称Regex或RE)又称为正规表示法或常规表示法,常常用来检索、替换那些符合某个模式的文本,它首先设定好了一些特殊的字及字符组合,通过组合的“规则字符串”来对表达式进行过滤,从而获取或匹配我们想要的特定内容。它具有灵活、逻辑性和功能性非常的强,能迅速地通过表达式从字符串中找到所需信息的优点。

    正则表达式的常见语法格式:

    在 Python 中,我们可以使用内置的 re 模块来使用正则表达式。re模块提供了3个方法对输入的字符串进行确切的不同要求查询。每一个方法都接收一个正则表达式和一个待查找匹配的字符串。

    (1)match()方法- 从头匹配:

    match()方法的工作方式是只有当被搜索字符串的开头匹配模式的时候它才能查找到匹配对象。

    (2)使用re.search查找 – 匹配任意位置:

    search()方法和match()类似,不过search()方法不会限制我们只从字符串的开头查找匹配。search()方法会在它查找到一个匹配项之后停止继续查找。

    (3)使用 re.findall – 所有匹配对象:

    在Python中我使用的最多的查找方法是findall()方法。当我们调用findall()方法,我们可以非常简单地得到一个所有匹配模式的列表,

    2 正则表达式抓取网络数据常见方法

    在 HTML 中, 基本上所有的实体内容, 都会有个成对的 tag 来框住它。 而这个被 tag 住的内容, 就可以被展示成不同的形式。header 和 body。 在 header 中, 存放这一些网页的网页的元信息, 比如说 title, 这些信息是不会被显示到你看到的网页中的. 这些信息大多数时候是给浏览器看, 或者是给搜索引擎的爬虫看。HTML 的第二大块是 body, 这个部分才是你看到的网页信息。网页中的视频, 图片和文字等都存放在这里。 tag 就是主标题, 我们看到呈现出来的效果就是大一号的字。 里面的文字就是一个段落。 里面都是一些链接。是层用来存放一块信息。在html还有很多这样的tag,信息都是放在这些 tag 中的。爬虫想要做的就是根据这些 tag 来找到合适的信息。

    1)爬取网页

    通过下列操作成功爬取了百度的首页。

    2) 抓取title标签间的内容

    Print data打印出来抓取的网页,这就证明了我们能够成功读取这个网页的所有信息了。但我们还没有对网页的信息进行汇总和利用。我们发现想要提取一些形式的信息,合理的利用 tag 的名字十分重要。我们想用代码找到这个网页的 title,选好要使用的 tag 名称 。 使用正则匹配。</p><p>    title=re.findall(r"<title>(.+?)", data)

    print(title[0])

    3)抓取

    标签间的内容

    想要找到中间的那个段落

    的内容跟一样,但因为这个段落在 HTML 中还夹杂着 tab, new line, 所以我们给一个flags=re.DOTALL 来对这些 tab, new line 不敏感。</p><p>    4)爬取所有的连接的网址。</p><p>    有些时候,我们需要获取网站中所有的超链接并保存在文档里进行应用。一个一个获取是不现实的,我们把网页爬取出来后,用正则表达式去在索出来。超链接在网页中的格式是:你好,请登录。网址以href=“开头,以”结束。因此正则表达p=re.findall(rhref=”(.*?)”),data),其中data存放抓取的网页信息,r进行转义。</p><p>    3 总结</p><p>    大数据时代,我们需要海量的信息去分析市场、分析客户。而爬虫获取的数据掺杂着大量的代码和没用的数据。通过 正则表达式筛选有用的信息,过滤无用的数据。本文介绍爬虫与正则表达式的关系,正则表达式的语法,re模块的几种应用正则表达式方法的区别。最后通过案例总结了python爬虫中正则表达式的使用技巧。</p><p>    参考文献:</p><p>    [1]熊畅.基于Python爬虫技术的网页数据抓取与分析研究[J]. 数字技术与应用,2017(9):45-46.</p><p>    [2]魏冬梅,何忠秀,唐建梅.基于Python的Web信息获取方法研究[J].软件导刊,2018, 17(1):41-43.</p><p>    [3]万磊,严道波,杨勇,等.基于文本挖掘的95598投訴工单关键信息提取分析[J].电力与能源,2019,40(01):76-78.</p><p>    [4]Jeffrey E.F.Friedl(著).精通正则表达式[M].余晟,译.北京:电子工业出版社,2008.</p><p>    【通联编辑:闻翔军】</p> </td> </tr> <tr> <td width="61" align="center">随便看</td> <td> <ul class="random"> <li><a target="_blank" href="d136284.html">入侵网络特征变化信号提纯方法研究</a></li> <li><a target="_blank" href="d136285.html">一种新型高增益准Z源逆变器</a></li> <li><a target="_blank" href="d136286.html">多Agent的创新网络入侵检测方法仿真研究</a></li> <li><a target="_blank" href="d136287.html">基于无线传感器网络火情定位方法</a></li> <li><a target="_blank" href="d136288.html">莱特准则改进算法的呼伦湖环境信息采集系统的设计</a></li> <li><a target="_blank" href="d136289.html">基于改进SVM的通信干扰识别</a></li> <li><a target="_blank" href="d136290.html">云电子身份管理与认证系统中的关键技术优化改进</a></li> <li><a target="_blank" href="d136291.html">视频自适应技术在网页设计中的实现</a></li> <li><a target="_blank" href="d136292.html">基于图像分割和LSSVM的高光谱图像分类</a></li> <li><a target="_blank" href="d136293.html">大型多媒体网络通信中的安全监测平台设计</a></li> <li><a target="_blank" href="d136294.html">基于嵌入式平台人眼疲劳检测终端的设计与实现</a></li> <li><a target="_blank" href="d136295.html">武汉VHF相干散射雷达及初始观测结果</a></li> <li><a target="_blank" href="d136296.html">基于STC15 MCU的微型四轴飞行器设计</a></li> <li><a target="_blank" href="d136297.html">物联网差异体系结构下的设备调度平台设计与实现</a></li> <li><a target="_blank" href="d136298.html">三维功率MOSFET器件漏极持续电流分析方法</a></li> <li><a target="_blank" href="d136299.html">基于自动代码生成技术的汽车电子控制系统设计</a></li> <li><a target="_blank" href="d136300.html">基于Ad Hoc的微震监测数据传输系统设计</a></li> <li><a target="_blank" href="d136301.html">基于VIIS?EM平台的虚拟万用表的设计</a></li> <li><a target="_blank" href="d136302.html">基于MIE理论的室内便携式颗粒物检测仪设计</a></li> <li><a target="_blank" href="d136303.html">多传感器数据融合技术在机房监控系统中的应用</a></li> <li><a target="_blank" href="d136304.html">移动网络用户行为挖掘模型及在E?Learning系统中的应用</a></li> <li><a target="_blank" href="d136305.html">基于物联网的无线实时定位系统的设计与实现</a></li> <li><a target="_blank" href="d136306.html">基于ARM平台的智能安防系统的设计与实现</a></li> <li><a target="_blank" href="d136307.html">大型物联网设备中智能嵌入式监测系统设计</a></li> <li><a target="_blank" href="d136308.html">基于图像特征细化的海量数据挖掘系统设计与实现</a></li> <li><a target="_blank" href="117273.html">software engiˌneering</a></li> <li><a target="_blank" href="117274.html">softwares</a></li> <li><a target="_blank" href="117275.html">softwood</a></li> <li><a target="_blank" href="117276.html">softwoods</a></li> <li><a target="_blank" href="117277.html">softy</a></li> <li><a target="_blank" href="117278.html">soggier</a></li> <li><a target="_blank" href="117279.html">soggiest</a></li> <li><a target="_blank" href="117280.html">soggily</a></li> <li><a target="_blank" href="117281.html">sogginess</a></li> <li><a target="_blank" href="117282.html">sogginesses</a></li> <li><a target="_blank" href="117283.html">soggy</a></li> <li><a target="_blank" href="117284.html">soho</a></li> <li><a target="_blank" href="117285.html">soil</a></li> <li><a target="_blank" href="117286.html">soiled</a></li> <li><a target="_blank" href="117287.html">soiler</a></li> <li><a target="_blank" href="117288.html">soiling</a></li> <li><a target="_blank" href="117289.html">soil-less</a></li> <li><a target="_blank" href="117290.html">soils</a></li> <li><a target="_blank" href="117291.html">soil²</a></li> <li><a target="_blank" href="117292.html">soil¹</a></li> <li><a target="_blank" href="117293.html">solace</a></li> <li><a target="_blank" href="117294.html">solaced</a></li> <li><a target="_blank" href="117295.html">solacement</a></li> <li><a target="_blank" href="117296.html">solacements</a></li> <li><a target="_blank" href="117297.html">solacer</a></li> <li><a target="_blank" href="b478736.html">衣服和被子</a></li> <li><a target="_blank" href="b478737.html">衣服和被褥</a></li> <li><a target="_blank" href="b478738.html">衣服和装饰</a></li> <li><a target="_blank" href="b478739.html">衣服和裤子</a></li> <li><a target="_blank" href="b478740.html">衣服和车子</a></li> <li><a target="_blank" href="b478741.html">衣服和鞋子等的宽窄</a></li> <li><a target="_blank" href="b478742.html">衣服和食物</a></li> <li><a target="_blank" href="b478743.html">衣服因穿久了磨损或将破未破的样子</a></li> <li><a target="_blank" href="b478744.html">衣服好</a></li> <li><a target="_blank" href="b478745.html">衣服宽大</a></li> <li><a target="_blank" href="b478746.html">衣服小而紧</a></li> <li><a target="_blank" href="b478747.html">衣服是新的好,朋友是旧的好</a></li> <li><a target="_blank" href="b478748.html">衣服是要自己穿破,不能叫人从背后指点破</a></li> <li><a target="_blank" href="b478749.html">衣服柔和淡雅</a></li> <li><a target="_blank" href="b478750.html">衣服济楚</a></li> <li><a target="_blank" href="b478751.html">衣服湿了架子不倒</a></li> <li><a target="_blank" href="b478752.html">衣服狭小</a></li> <li><a target="_blank" href="b478753.html">衣服甚多</a></li> <li><a target="_blank" href="b478754.html">衣服的下缘</a></li> <li><a target="_blank" href="b478755.html">衣服的全套</a></li> <li><a target="_blank" href="b478756.html">衣服的形制</a></li> <li><a target="_blank" href="b478757.html">衣服的情况</a></li> <li><a target="_blank" href="b478758.html">衣服的挂肩或腰身</a></li> <li><a target="_blank" href="b478759.html">衣服的文饰</a></li> <li><a target="_blank" href="b478760.html">衣服的斜角</a></li> </ul> </td> </tr> </table> <p> </p> <p>科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。<p> </p> <div class="foot">Copyright © 2004-2023 puapp.net All Rights Reserved<BR> <span class="updatetime"> 更新时间:2025/11/28 22:17:43</span><script src="/js/count.js" type="text/javascript"></script></div> </body> </html>