Sou iniciante em PHP e estou tentando desenvolver um crawler em PHP para um projeto.
Já consegui pegar as informações que preciso, porém o site que estou 'crawleando' só exibe 20 resultados por página. Dependendo de qual cidade é inserida no campo de busca, podemos ter X páginas para serem exibidas da 1ª a última.
As páginas seguem o mesmo padrão com a númeração no final.
Mas não estou tendo nenhuma ideia que funcione de como automatizar isso no crawler para que ele possa ler todas as páginas disponíveis.
Alguem consegue me ajudar?
Segue crawler:
<?php
require"vendor/autoload.php";
use GuzzleHttp\Client;
use Sunra\PhpSimple\HtmlDomParser;
$client = newClient([
'headers' => [
'User-Agent' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
class Data {
public static function ExibirTempoDecorrido($date)
{
if(empty($date))
{
return "Informe a data";
}
$periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
$duracao = array("60","60","24","7","4.35","12","10");
$agora = time();
$unix_data = strtotime($date);
// check validity of date
if(empty($unix_data))
{
return "Bad date";
}
// is it future date or past date
if($agora > $unix_data)
{
$diferenca = $agora - $unix_data;
$tempo = "atrás";
}
else
{
$diferenca = $unix_data - $agora;
$tempo = "agora";
}
for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++)
{
$diferenca /= $duracao[$j];
}
$diferenca = round($diferenca);
if($diferenca != 1)
{
$periodos[$j].= "s";
}
return "$diferenca $periodos[$j] {$tempo}";
}
}
Funciona redondinho se o valor retornado for de algumas horas, mas...
Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
if($diferenca != 1)
{
$periodos[$j].= "s";
}
Olá...
Estou tentando fazer o seguinte !!
Listando dados em tabela !!
Gostaria que....se na listagem houver 4 linhas...indepedente de seu número de ID, faça a listagem em ID ser em ordem 1 2 3 4 !!
Exemplo...se tiver uma listagem de dados que está em ID 1 3 3...faça ficar 1 2 3 !!
Eu uso o tinymce para cadastro de textos no meu siite, porém, quero fazer um sistema para que os colunistas possam fazer o próprio post.
O problema do tinymce, é que ele mantém a formatação do texto copiado, como tamanho de fonts, negritos, etc... Quero que o usuário cole o texto e a própria textarea limpe a formatação para que ele formate como quiser.
A pergunta é:
O tinymce tem uma opção para desabilitar a formatação quando um texto é colocado?
Tem alguma função via java ou php para retirar a formatação assim que o texto é colado?
Ou é melhor usar um outro editor?
Olá a todos!
Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
Preciso que a pagina inclusa já inicie carregada
Meu código JavaScript e a DIV com a pagina PHP
<script>
function atualiza(){
var url = 'direita.php';
$.get(url, function(dataReturn) {
$('#direita').html(dataReturn);
});
}
setInterval("atualiza()",60000);
</script>
<div>
<span id="direita"></span>
</div>
Quero selecionar duas tabelas e mostrar com resultados intercalados. Abaixo segue um código explicando para vcs terem uma ideia.
$consulta = "SELECT A.*, B.* FROM tabela1 A, tabela2 B'";
$resultado = mysqli_query($conexao, $consulta) or die ("erro");
while($busca = mysqli_fetch_array($resultado)){
print $busca['cod_evento']; --> traz o código da tabela1
print $busca['titulo_evento']; --> traz o titulo da tabela1
print $busca['cod_noticia']; --> traz o código da tabela2
print $busca['titulo_noticia']; --> traz o tituloda tabela2
Boa noite pessoal.
Sou iniciante em PHP e estou tentando desenvolver um crawler em PHP para um projeto.
Já consegui pegar as informações que preciso, porém o site que estou 'crawleando' só exibe 20 resultados por página. Dependendo de qual cidade é inserida no campo de busca, podemos ter X páginas para serem exibidas da 1ª a última.
As páginas seguem o mesmo padrão com a númeração no final.
Mas não estou tendo nenhuma ideia que funcione de como automatizar isso no crawler para que ele possa ler todas as páginas disponíveis.
Alguem consegue me ajudar?
Segue crawler:
Agradeço muito a ajuda.
Abraços.
Compartilhar este post
Link para o post
Compartilhar em outros sites