MATLAB | 如何使用MATLAB获取顶刊cell全部绘图(附带近3年全部图像)

news2024/12/23 15:18:31

众所周知,学习科研绘图、配色最好的办法就是去观摩顶级期刊上的作图,本来想着收集各个顶级期刊绘图提供给大家,但是每年的图像加起来大约3-5G,撑死也就能提供三四年的图像,再多内存可能不太够了,于是我写了一段杷虫代码,可以下载任意册期刊的全部图像,运行就命令行运行例如getCellJPG(185),就可以下载第185册(2022)的全部图像,这段代码也不算长,就放这吧(我杷虫代码功底属实一般,大家见谅):

function getCellJPG(volume)
if nargin < 1
volume = 184;
end

url_archive0   = 'https://www.cell.com/cell/issues';
html_archive   = urlread(url_archive0);
A_html_archive = strfind(html_archive,'data-groupid');
Z_html_archive = strfind(html_archive,['>Volume ',num2str(volume)]);
url_archiven   = html_archive(A_html_archive(find(A_html_archive<Z_html_archive,1,'last')):Z_html_archive);
url_archiven   = url_archiven(15:end-59);

url_archive1   = 'https://www.cell.com/cell/archive?issueGroupId=';
url_archive2   = '&publicationCode=cell';
url_archive    = [url_archive1,url_archiven,url_archive2];

html_archive   = urlread(url_archive);
A_html_archive = strfind(html_archive,['Volume ',num2str(volume)]);
Z_html_archive = strfind(html_archive,'archive?publicationCode=cell');
Z_html_archive = Z_html_archive(find(Z_html_archive>A_html_archive,1));
html_archive   = html_archive(A_html_archive:Z_html_archive);

A_issue = strfind(html_archive,'<a href=');
Z_issue = strfind(html_archive,'">');

ibegin = 1; jbegin = 1; kbegin = 1;
forderName=['Volume_',num2str(volume)];
if exist(['.\image_',forderName,'\ijkbreak.mat'],'file')
    load(['.\image_',forderName,'\ijkbreak.mat']);
end
if ~exist(['.\image_',forderName],'dir')
    mkdir(['.\image_',forderName]);
end
disp([ibegin,jbegin,kbegin])

for i = ibegin:length(A_issue)
    url_issue    = html_archive(A_issue(i):Z_issue(find(Z_issue>A_issue(i),1)));
    url_issue    = url_issue(10:end-1);
    html_issue   = urlread(['https://www.cell.com',url_issue]);
    A_html_issue = strfind(html_issue,'id="Articles"');
    Z_html_issue = strfind(html_issue,'The content on this site');
    html_issue   = html_issue(A_html_issue:Z_html_issue);

    A_article = strfind(html_issue,'class="toc__item__title"');
    Z_article = strfind(html_issue,'">');

    for j = jbegin:length(A_article)

        url_article  = html_issue(A_article(j):Z_article(find(Z_article>A_article(j)+30,2)));
        url_article  = url_article(50:end-1);
        html_article = urlread(['https://www.cell.com/cell/fulltext/',url_article]);

        A_jpg = strfind(html_article,'<a href="');
        Z_jpg = strfind(html_article,'download-links__download-Hi-res');

        for k = kbegin:length(Z_jpg)
            ibegin = i ; jbegin = j; kbegin = k;
            save(['.\image_',forderName,'\ijkbreak.mat'],'ibegin','jbegin','kbegin')
            url_jpg  = html_article(A_jpg(find(A_jpg<Z_jpg(k),1,'last')):Z_jpg(k));
            url_jpg  = ['https://www.cell.com',url_jpg(10:end-10)];
            name_jpg = ['.\image_',forderName,'\',url_article,' P',num2str(k)];
            websave(name_jpg,url_jpg);
            disp(['Downloading Volume-',num2str(volume),...
                ' Issue-',num2str(i),' Artical-',num2str(j),...
                ' Pic-',num2str(k),':',url_article])

        end
        kbegin = 1;
    end
    jbegin = 1;
end
end

代码设置了可断点下载,就是可以下载了一半中断程序后过段时间接着下。

同时如果有的时候看到一张图非常好想找找源文章读一读,此代码下载的图像名称就标注了图像的来源,比如:
S0092-8674(21)01427-6 P14 这张图片,就是来自编号 S0092-8674(21)01427-6 论文的第14张图:

注意此处连带封面图和示意图一起爬取的,因此第14张图不一定是Figure14哈:

在浏览器输入该论文链接:

  • https://www.cell.com/cell/fulltext/S0092-8674(21)01427-6

找到第14张图,是不是对应一致的:


部分图像展示

volume 186 (2023)


volume 185 (2022)


volume 185 (2021)


图像获取

百度网盘

提供近三年来图片百度网盘链接,其中2023年目前为止共1035张,2022年共2578张,2021年共4707张:

volume 186 (2023)

链接:
https://pan.baidu.com/s/1eXPZBWF-wZvjO_rP1M5F4A?pwd=slan
提取码:slan

volume 185 (2022)

链接:
https://pan.baidu.com/s/1OCfNwaA_7Y24Hl-IKMsEpQ?pwd=slan
提取码:slan

volume 184 (2021)

链接:
https://pan.baidu.com/s/1WXcyyKMbUjL13z02yBKrOA?pwd=slan
提取码:slan

gitee仓库

若网盘失效,可去gitee仓库获取最新网盘链接:

https://gitee.com/slandarer/cell-figures

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/652718.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【python】pandas-DataFrame类型数据重命名列表头

目录 0.环境 1.将DataFrame类型数据某一列重命名 0.环境 windows jupyter notebook python 使用场景&#xff1a; 在处理数据对齐的问题时&#xff0c;两个表格的对齐列名不相同&#xff08;一个数据集是DataFrame类型&#xff0c;一个数据集是geopandas类型&#xff09;&…

加速金融营销科技价值发现,神策数据双引擎赋能数字化客户经营

6 月 9 日&#xff0c;「开放融合&#xff0c;引领营销 5.0 新纪元——暨 2023 年金融营销科技价值发现论坛」在中国杭州成功举办。 神策数据创始人 & CEO 桑文锋发表了《双引擎赋能数字化客户经营》的主题演讲&#xff0c;并与数十位来自银行、证券、保险、互联网金融等领…

基于Eclipse+Java+Swing+Mysql实现进销存管理系统

基于EclipseJavaSwingMysql实现进销存管理系统 一、系统介绍二、功能展示1.登陆2.商品列表3.购买清单4.个人中心5.商品采购6、采购记录7、商品预警 三、数据库四、其它1.其他系统实现五.获取源码 一、系统介绍 用户&#xff1a;商品列表、购买清单、个人中心 管理员&#xff1…

腾讯安全升级三大原子能力,助力企业构建数字安全免疫力

数字化时代&#xff0c;企业如何治好“发展”与“安全”失调症&#xff1f;近日,腾讯安全、IDC、腾讯研究院等联合举办研讨论坛&#xff0c;发布“数字安全免疫力”模型框架&#xff0c;提出用免疫思维应对新时期下安全建设与企业发展难以协同的挑战。 (腾讯安全联合IDC发布“…

Redis入门 - Redis概念和基础

原文首更地址&#xff0c;阅读效果更佳&#xff01;Redis入门 - Redis概念和基础 https://www.codermast.com/database/redis/introduce-redis.html 什么是NoSQL NoSQL&#xff0c;泛指非关系型的数据库。NoSQL最常见的解释是 "non-relational"&#xff0c; 很多人…

Spring Boot整合Redis

文章目录 一、Redis概述二、使用Spring Boot 整合 Redis&#xff08;一&#xff09;搭建Redis环境&#xff08;二&#xff09;下载和安装Redis可视化管理工具&#xff08;三&#xff09;创建Spring Boot项目RedisDemo&#xff08;四&#xff09;创建实体类1、创建地址实体类 - …

建立和使用Python自定义模块

文章目录 &#xff08;一&#xff09;现状以及问题&#xff08;二&#xff09;Python模块&#xff08;2.1&#xff09;包的结构&#xff08;2.2&#xff09;包的位置&#xff08;2.2.1&#xff09;site-packages目录&#xff08;2.2.2&#xff09;dist-packages目录 &#xff0…

更新阅读量时的常见错误:脏读

最近在对开发完的项目进行测试&#xff0c;于是用到了Jmeter来进行压力测试…… 这里准备压测的是一个获取详情的方法&#xff0c;在获取详情的通知更新阅读量&#xff01; 上图中代码的逻辑是&#xff1a; 1. 根据ID获取实体 2. 判断实体是否存在 3. 使用三目运算获…

【c++11】c++1特性

c11 c11简介列表初始化std::initializer_list autodecltypenullptr 结语 c11简介 从C0x到C11&#xff0c;C标准10年磨一剑&#xff0c;第二个真正意义上的标准珊珊来迟。相比于C98/03&#xff0c;C11则带来了数量可观的变化&#xff0c;其中包含了约140个新特性&#xff0c;以…

datax-web

【DataX-Web的搭建&#xff08;Windows/Linux环境&#xff09;_datax源码部署_zxj19880502的博客-CSDN博客 mirrors / WeiYe-Jing / datax-web GitCode https://github.com/WeiYe-Jing/datax-web/blob/master/userGuid.md 安装使用 这里只记录关键点 1、先安装datax、参考…

LED太阳能感应庭院灯开发方案

在庭院装修的时候&#xff0c;常会使用一些外部美观的照明灯&#xff0c;提供户外照明。为此&#xff0c;宇凡微推出了LED太阳能感应庭院灯方案&#xff0c;庭院灯控制芯片采用宇凡微YF单片机。 一、LED太阳能感应庭院灯方案的原理 太阳能感应庭院灯根据不同的设计需求&#xf…

dp算法篇Day4

"我把每一天都当做新开始&#xff0c;新革命。" 16、买卖股票的最佳时机含手续费 (1) 题目分析 完成一笔交易才算达成交易。但其实你可以将手续费加在任意一处上。 (2) 算法原理 class Solution { public:int maxProfit(vector<int>& prices, int fee)…

从敏捷到精益-漫谈敏捷实践

敏捷宣言与12条原则 让我们一起来回顾一下敏捷宣言和12条原则&#xff0c;不了解这些&#xff0c;怎么进行实践呢。 敏捷宣言&#xff1a; 个体与交互 胜过 过程与工具 可以工作的软件 胜过 面面俱到的文档 客户协作 胜过 合同谈判 响应变化 胜过 遵循计划 敏捷12条原则 1、…

Python学习49:词频统计

类型&#xff1a;文件‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬ 描述‪‬‪‬…

WPS表格:使用技巧

文章目录 1、时间1&#xff09;调整时间格式① 连接符② 将“常规、短日期、长日期”格式下的时间调整为自定格式③出现“数字”的情况④ 日期格式方便筛选、统计&#xff1b;转换格式&#xff1b;计算⑤出现#的几种情况⑥ 用“数据---分列”统一变成日期格式 2&#xff09;计算…

SpringBatch从入门到实战(三):作业参数

一&#xff1a;JobParameters传参 api获取 Spring Batch认为一个Job的唯一依据是 job_name hash(JobParameters) 作为联合主键盘 &#xff0c;所以每次执行都会传入一个唯一变动的参数&#xff0c;spring batch 就会认为这是不同的job&#xff0c;就可以重复执行同一个job。 …

Excel中数据转换成甘特图(wps)

数据准备 Excel数据如下表所示&#xff1b; 耗时这一列需要有&#xff0c;没有的话先添加耗时列&#xff1a;单元格E3-C31 自动计算耗时&#xff1b; 转换甘特图 1、调整数据 开始时间列&#xff0c;单元格格式 设置为 常规 2、插入堆积条形图 选中 关键人物 开始时间 和…

Axure必备入门知识

导语 Axure作为专业的原型工具&#xff0c;深受众多产品经理的喜爱&#xff0c;同样也是产品经理应聘的必备技能工具。本期小编将从软件安装及汉化、软件授权、软件使用、案例学习、使用问答、元件库、原型模板及实战原型、原型托管演示等方面介绍Axure必备入门知识&#xff0c…

基于vue搭建的网站如何防范XSS攻击

1.对于从接口请求的数据&#xff0c;尽量使用{{}}加载,而不是v-html ue中的大括号会把数据解释为普通文本。通常如果要解释成html代码则要用v-html。而此指令相当于innerHTML。虽然像innerHTML一样不会直接输出script标签&#xff0c;但也可以输出img&#xff0c;iframe等标签…

国产自主GPU架构“天狼星”在北京亮相

GPU&#xff08;Graphic Processing Unit&#xff09;即图形处理器&#xff0c;是数字世界图形内容生成的基石&#xff0c;不管是桌面应用、游戏、电影、数字孪生还是元宇宙&#xff1b;与此同时&#xff0c;强大的并行计算能力业已成为各种应用加速的主流手段&#xff0c;正广…