用R语言的RCurl和正则表达式爬团购网的旅游团购数据

前端之家收集整理的这篇文章主要介绍了用R语言的RCurl和正则表达式爬团购网的旅游团购数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

用R里的包Rcurl和正则表达式,代码如下

url1='http://www.dianping.com/search/category/2/10/g110'

web=readLines(url1,encoding='UTF-8'); #逐行读取网页源文件

data_name<-web[grep("data-name",web)];#找出含字符data-name的行
shop_name<-substr(data_name,regexpr('data-name=\"',data_name)+12,nchar(data_name)-28) #仔细看网页源文件,算出具体的字符位置

> shop_name
 [1] "滋味港式粥火锅(工体店)"                 "宴山自助火锅(大悦城店)"                
 [3] "簋小山城(亚运村店)"                     "女队长重庆火锅(工体店)"                
 [5] "一湖重庆老火锅(燕莎桥店)"               "色煮艺 • 私房火锅(蓝色港湾汇中天恒店)" 
 [7] "女队长重庆火锅(望京店)"                 "格老灶火锅(悠唐店)"                    
 [9] "娘火锅(亚运村店)"                       "只耳冷锅鱼(保利店)"                    
[11] "野菜日式火锅"                           "坊胜利饭店(四道口店)"                  
[13] "军涮(广外店)"                           "火UFO芝士排骨&即席年糕火锅(南锣鼓巷店)"
[15] "林串串香(东直门簋街店)"                 "格老灶火锅(石景山店)"                  
[17] "方格火锅"                               "道火锅运动主题餐厅(天阶店)"            
[19] "塘火锅"                                 "坊胜利饭店(大成路店)"                  
[21] "簋小山城(簋街二店)"  


主要函数注释:

grep("goods-name",web):在web行文件中,寻找含有字符”goods-name”内容的行,返回行号

position <- regexpr('_',a):regexpr()函数对字符的定位很有用,返回值position为特定字符的位置,如字符串a中’_’的位置

nchar(a):返回a的字符个数

原文链接:https://www.f2er.com/regex/360441.html

猜你在找的正则表达式相关文章