Esempio n. 1
0
 /**
  * Carga los datos de las producciones que se pondran en cola en la propiedad $dataRepository del objeto
  */
 public function loadRepository()
 {
     if ($this->skip >= self::MAX_NUM_QUERY) {
         return;
     }
     parent::loadContent(self::URL_SOURCE . $this->skip);
     //Selecciona y divide en secciones HTML el contenido relevante de cada produccion obtenida de la fuente
     preg_match_all('/<td[^>]*class=["\']title*["\']\\>(.*?)<\\/td>/i', $this->htmlContent, $sections, PREG_SET_ORDER);
     foreach ($sections as $section) {
         $data = $section[0];
         if (preg_match_all('/<a\\s+.*?href=[\\"\']?([^\\"\' >]*)[\\"\']?[^>]*>(.*?)<\\/a>/i', $data, $matches, PREG_SET_ORDER)) {
             foreach ($matches as $match) {
                 if (!Util::isUrl(self::WEB_SITE_SOURCE . $match[1])) {
                     continue;
                 }
                 //Array(titulo, Enlace)
                 $this->dataRepository[] = array(strip_tags($match[0]), self::WEB_SITE_SOURCE . $match[1]);
                 break;
             }
         }
     }
 }