MATLAB | Como usar o MATLAB para obter o desenho "PNAS" da edição principal (com quase 3 anos de imagens)

Depois de chamadas tão esperadas, o código para obter desenhos de "PNAS" está aqui, mas desta vez estudei muito e não pensei em como obter desenhos para artigos pagos, então baixei apenas artigos gratuitos (principalmente porque Tenho medo de violação), mas apenas artigos gratuitos Já se passaram três anos e há quase 1,7 w de fotos. Ao mesmo tempo, ao usar downloads de código, você ainda precisa navegar na Internet cientificamente. Portanto, é recomendável que você vá direto ao final do artigo para baixar o pacote de compactação de imagens que organizei.

Anote o código e use a linha de comando para executar getPNASJPG(YEAR).YEAR é o ano do diário, como getPNASJPG(2022).Se houver um erro 403, execute-o depois de um tempo e tudo ficará bem. . código mostra como abaixo:

function getPNASJPG(YEAR)
if nargin < 1
    YEAR = 2023;
end
YEAR         = num2str(YEAR);
str_YEAR     = ['d',YEAR(1:3),'0','.y',YEAR];
options      = weboptions('Timeout',inf);
url_archive  = ['https://www.pnas.org/loi/pnas/group/',str_YEAR];
html_archive = webread(url_archive,options);
A_issue      = strfind(html_archive,'past-issue__content__item--all-details d-flex flex-column');
str_issue    = html_archive(A_issue(1)+50:A_issue(1)+100);
S1_issue     = strfind(str_issue,'|');
S2_issue     = strfind(str_issue,'</h2>');
str1_issue   = str_issue(S1_issue(1):S1_issue(2));
str2_issue   = str_issue(S1_issue(2):S2_issue);
num1_issue   = str2num(str1_issue(str1_issue>=48&str1_issue<=57));
num2_issue   = str2num(str2_issue(str2_issue>=48&str2_issue<=57));

ibegin = 1; jbegin = 1; kbegin = 1;
forderName=['Year_',num2str(YEAR)];
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:num2_issue
    url_issue  = ['https://www.pnas.org/toc/pnas/',num2str(num1_issue),'/',num2str(i)];
    html_issue = webread(url_issue,options);
    A_article  = strfind(html_issue,'Research Article');
    Z_article  = strfind(html_issue,'Recent Issues');
    html_issue = html_issue(A_article(1):Z_article(1));

    B_article  = strfind(html_issue,'icon-open-access');
    A_article  = strfind(html_issue,'text-reset animation-underline');
    Z_article  = strfind(html_issue,'title="');
    for j = jbegin:length(B_article)
        tA_article   = A_article(find(B_article(j)<A_article,1));
        url_article  = html_issue(tA_article:Z_article(find(Z_article>tA_article,1)));
        url_article  = url_article(39:end-3);
        url_article  = ['https://www.pnas.org',url_article]; 
        html_article = webread(url_article,options);

        A_JPG   = strfind(html_article,[url_article(find(url_article=='/',1,'last'):end),'/asset/']);
        Z_JPG   = strfind(html_article,'jpg" height=');

        for k = kbegin:length(A_JPG)
            try
            ibegin = i ; jbegin = j; kbegin = k;
            save(['.\image_',forderName,'\ijkbreak.mat'],'ibegin','jbegin','kbegin')
            url_JPG = ['https://www.pnas.org/cms/10.1073',html_article(A_JPG(k):Z_JPG(k)+2)];
            name_JPG = ['.\image_',forderName,'\',url_JPG(find(url_JPG=='/',1,'last')+1:end)];
            websave(name_JPG,url_JPG,options);
            disp(['Downloading Year-',YEAR,...
                 ' Issue-',num2str(i),' Artical-',num2str(j),...
                 ' Pic-',num2str(k),':',url_article(22:end)])
            catch
            end
        end
        kbegin = 1;
    end
    jbegin = 1;
end
end

O código é configurado para baixar com breakpoints, ou seja, você pode baixar metade do programa interrompido e continuar baixando depois de um tempo.

Ao mesmo tempo, se às vezes você vir uma imagem e quiser encontrar o artigo de origem para ler, o nome da imagem baixada por este código marcará a origem da imagem. Por exemplo, você está interessado na imagem chamada pnas. 2212633120fig06 abaixo:

Basta inserir o link do artigo em seu navegador:

  • https://www.pnas.org/doi/10.1073/pnas.2212633120

É de fato Fig.6, absolutamente certo!


Exibição de imagem parcial

Há uma grande diferença entre fotos boas e fotos ruins em "PNAS". Todos têm uma escolha com a qual aprender. Aqui estão algumas fotos interessantes:

2023


2022


2021


aquisição de imagem

Baidu Netdisk

Forneça links para o disco de imagens da rede Baidu nos últimos três anos, um total de cerca de 1,7w imagens:

2023 (folhas 2,49G-3209)

Link:
https://pan.baidu.com/s/1YxRmt53jH-_TXGg6zkqtIg?pwd=slan
Código de extração: slan

2022 (3.12G-3329 fotos)

Link:
https://pan.baidu.com/s/1vFcEy48oOklW9UOUShVeAA?pwd=slan
Código de extração: slan

2022 (3.02G-3359 fotos)

Link:
https://pan.baidu.com/s/1ItVAmS18DcwlCNsM2u5rwg?pwd=slan
Código de extração: slan

2021 (2.61G-3077 fotos)

Link:
https://pan.baidu.com/s/1XHYlxR9_s1Ly9LCtlfnrhQ?pwd=slan
Código de extração: slan

Próximo 2021 (3.35G-3887 fotos)

Link:
https://pan.baidu.com/s/1uCUoi_hUUKlZ3kfc2oI4Yw?pwd=slan
Código de extração: slan

armazém rural

Se o disco de rede falhar, você pode ir ao gitee warehouse para obter o link do disco de rede mais recente:

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

Acho que você gosta

Origin blog.csdn.net/slandarer/article/details/131375607
Recomendado
Clasificación