diff --git a/bancodedados.sql b/bancodedados.sql new file mode 100644 index 0000000..2505005 --- /dev/null +++ b/bancodedados.sql @@ -0,0 +1,68 @@ +-- phpMyAdmin SQL Dump +-- version 4.6.6deb5 +-- https://www.phpmyadmin.net/ +-- +-- Host: localhost:3306 +-- Tempo de geração: 16/10/2017 às 08:46 +-- Versão do servidor: 10.1.26-MariaDB-1 +-- Versão do PHP: 7.0.22-3 + +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; + +-- +-- Banco de dados: `crawler` +-- +CREATE DATABASE IF NOT EXISTS `crawler` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; +USE `crawler`; + +-- -------------------------------------------------------- + +-- +-- Estrutura para tabela `videos` +-- + +CREATE TABLE `videos` ( + `id` int(3) NOT NULL, + `campus` varchar(500) NOT NULL, + `ano` varchar(500) NOT NULL, + `autores` varchar(500) NOT NULL, + `link_para_pagina` varchar(500) NOT NULL, + `titulo` varchar(500) NOT NULL, + `palavras_chave` varchar(500) NOT NULL, + `referencia` varchar(500) NOT NULL, + `resumo` text NOT NULL, + `abstract` text NOT NULL, + `descricao` text NOT NULL, + `link_video` varchar(500) NOT NULL, + `data_hora` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- +-- Índices de tabelas apagadas +-- + +-- +-- Índices de tabela `videos` +-- +ALTER TABLE `videos` + ADD PRIMARY KEY (`id`); + +-- +-- AUTO_INCREMENT de tabelas apagadas +-- + +-- +-- AUTO_INCREMENT de tabela `videos` +-- +ALTER TABLE `videos` + MODIFY `id` int(3) NOT NULL AUTO_INCREMENT; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/crawler.php b/crawler.php new file mode 100644 index 0000000..57bd031 --- /dev/null +++ b/crawler.php @@ -0,0 +1,150 @@ +
+ +", ""); + + //TITULO + $titulo = retirarEntre($pagina_video, "", ""); + $sql_pagina_video = $sql_pagina_video . " '$titulo', "; + + //PALAVRAS-CHAVE + $palavras_chave = retirarEntre($pagina_video, "", ""); + $sql_pagina_video = $sql_pagina_video . " '$palavras_chave', "; + + //REFERENCIA + $referencia = retirarEntre($pagina_video, "", ""); + $sql_pagina_video = $sql_pagina_video . " '$referencia', "; + + //RESUMO + $resumo = retirarEntre($pagina_video, "", ""); + $sql_pagina_video = $sql_pagina_video . " \"$resumo\", "; + + //ABSTRACT + $abstract = retirarEntre($pagina_video, "", ""); + $sql_pagina_video = $sql_pagina_video . " \"$abstract\", "; + + //DESCRICAO + $descricao = retirarEntre($pagina_video, "", ""); + $sql_pagina_video = $sql_pagina_video . " '$descricao', "; + + //VIDEO MP4 + $url_video = @explode("mp4", $pagina_video); + $url_video = @retirarEntre($url_video[2], ""); + $url_video = "http://repositorio.roca.utfpr.edu.br$url_video"."wmv"; + + if($url_video==""){ + echo "Não encontrado!"; + } + + } + + }else{ + //SE ACHAR UM MP4, COLOCA MP4 NO FINAL + $url_video = "http://repositorio.roca.utfpr.edu.br". $url_video ."mp4"; + } + + $sql_pagina_video = $sql_pagina_video . " '$url_video' "; + + return $sql_pagina_video; + + +} + + +//PARTE 1 +//World Wide Web +$pagina_roca = file_get_contents("http://repositorio.roca.utfpr.edu.br/jspui/browse?type=tipologia&order=ASC&rpp=20&value=video"); + + +$pagina_roca = retirarEntre($pagina_roca, '', ""); + +$separa = explode("", $pagina_roca); + +$total_reas = count($separa); + +echo "Número de REAs encontrados: " . $total_reas ."

"; + +//PARTE 2 +//MULTI-THREADED DOWNLOADER E SCHEDULER (agendador) +$rea = 1; + +for($x=0; $x < $total_reas; $x++){ + + $sql = ""; + + $separa1 = retirarEntre($separa[$x], "", ""); + + + //CAMPUS + $campus = retirarEntre($separa1, "", ""); + $sql = $sql . " '$campus', "; + + //ANO + $ano = retirarEntre($separa1, "\">", ""); + $sql = $sql . " '$ano', " ; + + //AUTORES + $autores = retirarEntre($separa1, "", ""); + $sql = $sql . " '$autores', "; + + //PARTE 3, LINK PARA ENTRAR NA PAGINA QUE TEM VIDEO + //QUEUE URL (FILA DE URLs) + $link_pagina_video = retirarEntre($separa1, "
"); + + + $link_pagina_video = "http://repositorio.roca.utfpr.edu.br".$link_pagina_video; + $sql = $sql . " '$link_pagina_video', "; + + $dados_da_pagina = extrair_video( $link_pagina_video ); + $sql = $sql . $dados_da_pagina; + + //PARTE 6 FIM + //STORAGE (TEXT AND METADATA) + $query = "INSERT INTO videos (campus, ano, autores, link_para_pagina, titulo, palavras_chave, referencia, resumo, abstract, descricao, link_video) VALUES ( $sql )"; + + $query = mysqli_query($conexao, $query) or die(mysqli_error($conexao)); + + echo "[OK] REA $rea INCLUÍDO COM SUCESSO USANDO CRAWLER AUTOMATICAMENTE

"; + + $rea++; + +} +?>