如何从cBioPortal批量下载TCGA数据

cBioPortal对癌症基因组数据集做了比较好的整合,为了进行数据集的下载、分析和可视化。

可以用网页工具或者它们提供的R包"cgdsr"对几个目标基因进行分析,或者下载他们从Broad Institute Firehose下载整理的数据集。

cBioPortal的数据集下载页面如下,可以直接点击下载按钮下载单个数据集, 如果要批量下载,就需要一点网络爬虫的小知识。

网页内容

使用Chrome浏览器的检查功能,寻找实际的下载地址

image.png

不难发现,下载链接是http://download.cbioportal.org/paac_jhu_2014.tar.gz

下载地址

一开始的想法是,用curl http://www.cbioportal.org/datasets下载网页,然后用grep找到所有的下载链接,但是通过检查原代码,我发现这个页面其实是动态加载,不能通过常规的爬虫手段。

根据我的爬虫经验,下一步就是找JSON包,一般这种延迟加载的网页都会接着向服务器发起申请,获取需要的数据,果不其然,被我找到了json包。

JSON
wget http://www.cbioportal.org/proxy/download.cbioportal.org/study_list.json

检查该文件,推测里面每一行都是之前下载链接中压缩包文件名前缀

json内信息

构建一个下载shell脚本

for study in $(sed  -e 's/"//g'  -e 's/\[//' -e 's/\]//'  -e 's/,//' study_list.json)
do
    wget "http://download.cbioportal.org/${study}.tar.gz"
done 

发现能够顺利下载,证明了猜测,就是下载速度非常的感人。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,891评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,161评论 25 708
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,897评论 2 59
  • 感恩死党李苑的体贴入微!在我要吃雪兰醉时,就想到我会出现的状况,特意打电话来给我出锦囊妙计,越来越喜欢你了! 感恩...
    桑红珍阅读 314评论 0 3
  • 一、开启混淆 也就是minifyEnabled true,还可以设置shrinkResources true//是...
    Z_Liqiang阅读 505评论 0 3