更多>>关于我们
西安鲲之鹏网络信息技术有限公司从2010年开始专注于Web(网站)数据抓取领域。致力于为广大中国客户提供准确、快捷的数据采集相关服务。我们采用分布式系统架构,日采集网页数千万。我们拥有海量稳定高匿HTTP代理IP地址池,可以有效获取互联网任何公开可见信息。
您只需告诉我们您想抓取的网站是什么,您感兴趣的字段有哪些,你需要的数据是哪种格式,我们将为您做所有的工作,最后把数据(或程序)交付给你。
数据的格式可以是CSV、JSON、XML、ACCESS、SQLITE、MSSQL、MYSQL等等。
更多>>技术文章
发布时间:2022-01-15 来源:西安鲲之鹏官微
【经验分享】发现一个功能超强的CSV分析处理工具miller,分享一下
它是基于命令行的,项目主页地址:github.com/johnkerl/miller
下面拿一个360万行左右的CSV文件小试牛刀:
1. mlr --icsv --ojson head -n 2 meituan_waimai_shops_202108_v1_2.csv
解释:以JSON格式展示指定CSV文件的前两条记录,类似的还支持tail -n(查看文件最后几条记录)。如附图1所示。
2. mlr --icsv --ojson filter '$id=="8388644"' meituan_waimai_shops_202108_v1_2.csv
解释:筛选出CSV文件中id列为"8388644"的记录,以JSON格式展示。如附图2所示。
3. mlr --icsv --ojson cut -f 'id,city,name,address,phone,lng,lat' then head -n 3 meituan_waimai_shops_202108_v1_2.csv
解释:从CSV中截取部分字段,然后显示前3条记录。如附图3所示。
4. mlr --icsv --opprint count-distinct -f "city" then sort -nr count meituan_waimai_shops_202108_v1_2.csv
解释:统计"city"字段每种取值对应的数据条数,本例目的是统计每个城市里对应的外卖店铺数量。如附图4所示。
5. mlr --icsv --ojson filter '$comment_number!=""' then sort -nr 'comment_number' then head -n 3 meituan_waimai_shops_202108_v1_2.csv
解释:过滤掉CSV中comment_number为空的记录,然后按照comment_number数值从大到小排序,然后以JSON格式显示前三名。如附图5所示。
PS:
--icsv --ojson 可简写为 --c2j。
--icsv --opprint 可简写为 --c2p 。
更多用法详见教程:
https://miller.readthedocs.io/en/latest/
https://miller.readthedocs.io/en/latest/10min/
guillim.github.io/terminal/2018/06/19/MLR-for-CSV-manipulation.html
编译好的程序下载路径:
github.com/johnkerl/miller/releases/tag/v6.0.0(有Windows版,看这里介绍https://miller.readthedocs.io/en/latest/miller-on-windows/)
它是基于命令行的,项目主页地址:github.com/johnkerl/miller
下面拿一个360万行左右的CSV文件小试牛刀:
1. mlr --icsv --ojson head -n 2 meituan_waimai_shops_202108_v1_2.csv
解释:以JSON格式展示指定CSV文件的前两条记录,类似的还支持tail -n(查看文件最后几条记录)。如附图1所示。
2. mlr --icsv --ojson filter '$id=="8388644"' meituan_waimai_shops_202108_v1_2.csv
解释:筛选出CSV文件中id列为"8388644"的记录,以JSON格式展示。如附图2所示。
3. mlr --icsv --ojson cut -f 'id,city,name,address,phone,lng,lat' then head -n 3 meituan_waimai_shops_202108_v1_2.csv
解释:从CSV中截取部分字段,然后显示前3条记录。如附图3所示。
4. mlr --icsv --opprint count-distinct -f "city" then sort -nr count meituan_waimai_shops_202108_v1_2.csv
解释:统计"city"字段每种取值对应的数据条数,本例目的是统计每个城市里对应的外卖店铺数量。如附图4所示。
5. mlr --icsv --ojson filter '$comment_number!=""' then sort -nr 'comment_number' then head -n 3 meituan_waimai_shops_202108_v1_2.csv
解释:过滤掉CSV中comment_number为空的记录,然后按照comment_number数值从大到小排序,然后以JSON格式显示前三名。如附图5所示。
PS:
--icsv --ojson 可简写为 --c2j。
--icsv --opprint 可简写为 --c2p 。
更多用法详见教程:
https://miller.readthedocs.io/en/latest/
https://miller.readthedocs.io/en/latest/10min/
guillim.github.io/terminal/2018/06/19/MLR-for-CSV-manipulation.html
编译好的程序下载路径:
github.com/johnkerl/miller/releases/tag/v6.0.0(有Windows版,看这里介绍https://miller.readthedocs.io/en/latest/miller-on-windows/)
特别说明:该文章为鲲鹏数据原创内容 ,您除了可以发表评论外,还可以转载到别的网站,但是请保留源地址,谢谢!!(尊重他人劳动,我们共同努力)
☹ Disqus被Qiang了,之前的评论内容都没了。如果您有爬虫相关技术方面的问题,欢迎发到我们的问答平台:http://spider.site-digger.com/