maintainer = 'Pierre Mazière'; $this->name = 'Elsevier journals recent articles'; $this->uri = 'http://www.journals.elsevier.com'; $this->description = 'Returns the recent articles published in Elsevier journals'; $this->update = '2016-08-02'; $this->parameters[] = '[ { "name" : "Journal name", "identifier" : "j", "required" : "true", "exampleValue" : "academic-pediatrics", "title" : "Insert html-part of your journal" } ]'; } public function collectData(array $param){ $uri = 'http://www.journals.elsevier.com/'.$param['j'].'/recent-articles/'; $html = file_get_html($uri) or $this->returnError('No results for Elsevier journal '.$param['j'], 404); foreach($html->find('.pod-listing') as $article){ $item = new \Item(); $item->uri=$article->find('.pod-listing-header>a',0)->getAttribute('href').'?np=y'; $item->title=$article->find('.pod-listing-header>a',0)->plaintext; $item->name=trim($article->find('small',0)->plaintext); $item->timestamp=strtotime($article->find('.article-info',0)->plaintext); $item->content=trim($article->find('.article-content',0)->plaintext); $this->items[]=$item; } } public function getName(){ return 'Elsevier journals recent articles'; } public function getURI(){ return 'http://www.journals.elsevier.com'; } public function getCacheDuration(){ return 43200; // 12h } }