ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Stata爬虫-正则表达式

2021-07-06 20:04:43  阅读:255  来源: 互联网

标签:分析 正则表达式 爬虫 爬取 Stata 餐厅 必胜客


全文阅读:https://www.lianxh.cn/news/8c6be3c47d2eb.html

目录

连享会 Stata 爬虫和文本分析系列推文:

0. 背景 -

A. 爬虫之工具:R,Stata 和 Python

统计计量软件众多,例如 RStata 和 python 等,每个软件都有自己的优点和缺点。

就爬虫而言,python 和 R 软件的功能已较为成熟,拥有一系列实现各类功能的包 (package)。比如 R 中的 rvest 包在爬取静态网站数据方面功能很强大,此外,还有 RCurl 和 XML 包等。

相比而言,Stata 虽然在格式化数据处理和计量分析方面非常高效,但在爬虫方面可能还处于 爬行 阶段。曾经有人调侃道:利用 Stata 软件来爬虫的都是比较文艺的 ^-^。

事实并非如此。自 Stata 发布 14.0 版本以来,其字符处理功能已大幅改善,再配合 copy 和 curl 等命令,Stata 的爬虫能力日渐强大。curl (https://curl.haxx.se/) 是一个在命令行下工作的文件传输工具,支持文件的上传和下载,可发送各种 http 请求 给网站,进而抓取网站内容保存到本地。

B. 本文要干的事儿

本文将利用实例来对比 R,Stata 和 python 在爬虫方面的功能。「 100 行代码爬取全国所有必胜客餐厅信息」 一文中,作者利用 python 爬取了全国所有 必胜客餐厅信息 ,包括:餐厅名,地址和电话号码。借鉴该文的分析思路,本文利用 Stata 和 R 软件对其结果进行重现,爬取全国必胜客餐厅相关信息,以此说明使用 Stata 和 R 爬取数据的步骤和流程。

爬虫的第一步是分析网址,找出其中的规律,以便写循环实现自动爬取;接下来就是把网页信息复制 ( copy ) 下来,保存为 .txt 或其他便于读入统计或计量分析软件的数据文件。

copy 命令是 Stata 中常用的一个爬虫命令,但是在本例中却无法使用。分析必胜客官网网址可以发现,当切换城市时,网址不会随之改变,这时就不能构造有效的地址对其进行循环爬取。为此,我们使用外部命令 curl 命令来实现。

数据的爬取主要包括两部分:第一,从网站上将包含数据信息的源代码下载到本地。这里就涉及到需要对爬取的网站进行详细分析,对于这个网站更加详细的分析,大家可以看之前作者写的推文;第二,利用字符函数或正则表达式对下载的文本文件进行处理,这部分可以详细看之前的一个推文(https://blog.csdn.net/arlionn/article/details/85156842)。

本文分如下部分进行说明:第一,对网页结构进行分析;第二,讲解正则表达式中的零宽断言;第三,对必胜客餐厅分布信息进行抓取;第四,对文章内容进行总结;第五,参考资料说明。

全文阅读:https://www.lianxh.cn/news/8c6be3c47d2eb.html

标签:分析,正则表达式,爬虫,爬取,Stata,餐厅,必胜客
来源: https://blog.csdn.net/arlionn/article/details/118527807

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有