Hola buenas tardes ojala me puedan ayudar.
Estoy haciendo un bot para extraer los titulos y url de los anuncios de la siguiente pagina.
http://www.jobstoday.co.uk/ Esta usa una cookie para permitir ver los resultados y aparte se tienen que enviar mediante post los criterios de busqueda los cuales pueden estar vacios.
El problema es que cuando obtengo la url de las paginas para ir extrayendo los datos siempre me regresa los resultados de la primera pagina , no recorre las paginas (urls guardadas en un arreglo)y aparte me duplica los resultados.
aqui esta mi codigo
Código PHP:
Ver original<?php
include('../simple_html_dom.php');
$url = 'http://www.jobstoday.co.uk'; //pagina principal
$url2 = 'http://www.jobstoday.co.uk/cgi-bin/advsearch?rownum=26'; //
$cookie = tempnam('/tmp', 'COOKIE_'); 'fp_skill_include' => '',
'location_include' => ''
); //arreglo con las variables de post
curl_setopt($ch, CURLOPT_COOKIEJAR
, $cookie); //guardo la cookie curl_setopt($ch, CURLOPT_RETURNTRANSFER
, true); // devuelve el resultado
// la pagina donde se va a utilizar la cookie
$html = str_get_html($output);
//echo $html->find('div#page', 0)->find('a');
foreach ($html->find('div#page') as $pages)
{
foreach ( $pages->find('a[class=""]') as $pag)
{
$pagArray [] = $pag->href; //almaceno la urls para paginar
// echo 'pag'. $pag->plaintext.",$href ->href\n";
}
}
for ($i =0; $i < count( $pagArray); $i++ ) {
$urlP = $url.$pagArray[$i];
$content = str_get_html($output);
echo "$urlP\n";
foreach ( $content->find('div[class="clearfix"]') as $vacs)
{
foreach ( $vacs->find('h3/a') as $v)
echo $v->plaintext."\n"; //aqui duplica el titulo
// echo 'pag'. $pag->plaintext.",$href ->href\n";
}
// echo $urlP."\n";
}
Este son parte de los resultados como ven se duplican cuando solo aparecen una vez, y es el mismo resultado para todas las paginas que recorro.
Cita: Store Assistant
Store Assistant
Plant Fitter
Plant Fitter
Library Assistant x 2
Library Assistant x 2
Foster carers urgently needed
Foster carers urgently needed
Este lo voy a poner en un cron para que se ejecute cada cierto tiempo asi que no va ejecutarse en el navegador.
De antemano muchas gracias.