Você está na página 1de 1

%SCRIPT MATLAB %Exportao de imagens usando xml gerado pelo wordpress filename = '<URL>.

xml'; xmldata = fileread(filename); urlImgs = regexpi( xmldata, '<img(.*?)src=("|\'')(?<url>.*?)(\2)(.*?)>', 'names' ); % coloca tudo em cell, deixa apenas valores unicos e ordena urls = sort( unique( reshape( struct2cell(urlImgs), length(urlImgs), [] ) ) ); dirOutput = 'arquivos'; fh = fopen('extracao.log', 'a'); fprintf(fh, 'INICIO DA EXTRAO\n\n DATA: %s\n ARQUIVO: %s\n\n\n',datestr(now( )), filename); % Varrendo todas as imagens for k = 1:length(urls) url = urls{k}; if(regexp( url, '(.*)/wp-content/(.*)' )) dadosUrl = regexp( url, '(.*)/wp-content/(?<pasta>.*?)/(?<ano>.*?)/(?<me s>.*?)/(?<arquivo>.*)', 'names' ); dirSaida = fullfile(dirOutput, dadosUrl.pasta, dadosUrl.ano, dadosUrl.me s ); else dadosUrl = regexp( url, '(.*)/(?<arquivo>.*)', 'names' ); dirSaida = dirOutput; end if( ~exist(dirSaida, 'dir') ) mkdir(dirSaida); end % Baixa o arquivo e salva no diretrio correto msg = ''; try dadosUrl.arquivo = strrep(dadosUrl.arquivo, '%20', ' '); if( ~exist(fullfile(dirSaida, dadosUrl.arquivo), 'file')) urlwrite( url, fullfile(dirSaida, dadosUrl.arquivo)); msg = sprintf( '%s (OK)\n', url); else %msg = sprintf( '%s (IGNORADO) -> ARQUIVO J EXISTE\n', url); end catch E msg = sprintf( '%s (ERRO!!) -> OCORREU ALGUM PROBLEMA NO DOWNLOAD\n', ur l); fprintf( '%s', msg); end fprintf(fh, '%s', msg); end fprintf(fh, '\n\n------------------------\n\n'); fclose(fh);

Você também pode gostar