From 4aa9600d5f1b1afe59b7503b6db1a0aa1e032272 Mon Sep 17 00:00:00 2001 From: Dominik Pfennig <dominik@suma-ev.de> Date: Wed, 15 Jun 2016 15:31:40 +0200 Subject: [PATCH] =?UTF-8?q?Einige=20fehlende=20Suchmaschinen=20hinzugef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Models/parserSkripte/Beammachine.php | 45 +++++++++++++++++ app/Models/parserSkripte/Dart.php | 63 ++++++++++++++++++++++++ app/Models/parserSkripte/Goyax.php | 27 +++++----- app/Models/parserSkripte/Loklak.php | 43 ++++++++++++++++ 4 files changed, 162 insertions(+), 16 deletions(-) create mode 100644 app/Models/parserSkripte/Beammachine.php create mode 100644 app/Models/parserSkripte/Dart.php create mode 100644 app/Models/parserSkripte/Loklak.php diff --git a/app/Models/parserSkripte/Beammachine.php b/app/Models/parserSkripte/Beammachine.php new file mode 100644 index 000000000..102f08061 --- /dev/null +++ b/app/Models/parserSkripte/Beammachine.php @@ -0,0 +1,45 @@ +<?php + +namespace app\Models\parserSkripte; +use App\Models\Searchengine; + +class Beammachine extends Searchengine +{ + public $results = []; + + function __construct (\SimpleXMLElement $engine, \App\MetaGer $metager) + { + parent::__construct($engine, $metager); + } + + public function loadResults ($result) + { + $results = trim($result); + + foreach( explode("\n", $results) as $result ) + { + $res = explode("|", $result); + if(sizeof($res) < 3) + { + continue; + } + $title = $res[0]; + $link = $res[1]; + $anzeigeLink = $link; + $descr = $res[2]; + + $this->counter++; + $this->results[] = new \App\Models\Result( + $this->engine, + $title, + $link, + $anzeigeLink, + $descr, + $this->gefVon, + $this->counter + ); + } + + + } +} diff --git a/app/Models/parserSkripte/Dart.php b/app/Models/parserSkripte/Dart.php new file mode 100644 index 000000000..1d0674aa5 --- /dev/null +++ b/app/Models/parserSkripte/Dart.php @@ -0,0 +1,63 @@ +<?php + +namespace app\Models\parserSkripte; +use App\Models\Searchengine; +use Symfony\Component\DomCrawler\Crawler; + +class Dart extends Searchengine +{ + public $results = []; + + function __construct (\SimpleXMLElement $engine, \App\MetaGer $metager) + { + parent::__construct($engine, $metager); + } + + public function loadResults ($result) + { + + $crawler = new Crawler($result); + $crawler->filter('table#search-results > tr > td')->each(function (Crawler $node, $i) + { + $i = $i - ( 6 * $this->counter); + if($i === 0) + return; + if($i === 1) + { + $this->description = $node->text(); + $this->link = "http://www.dart-europe.eu/" . $node->filter('a')->attr('href'); + } + if($i === 2) + $this->title = $node->text(); + if($i === 3) + $this->title .= " (" . $node->text() . ")"; + if($i === 4) + $this->title .= " " . $node->text(); + if($i === 5) + { + $this->title .= "|" . $node->text(); + $title = $this->title; + $this->title = ""; + $link = $this->link; + $this->link = ""; + $anzeigeLink = $link; + $descr = $this->description; + $this->description = ""; + + $this->counter++; + $this->results[] = new \App\Models\Result( + $this->engine, + $title, + $link, + $anzeigeLink, + $descr, + $this->gefVon, + $this->counter + ); + } + } ); + + + + } +} diff --git a/app/Models/parserSkripte/Goyax.php b/app/Models/parserSkripte/Goyax.php index d93ccdbcd..ccade3a7e 100644 --- a/app/Models/parserSkripte/Goyax.php +++ b/app/Models/parserSkripte/Goyax.php @@ -2,33 +2,27 @@ namespace app\Models\parserSkripte; use App\Models\Searchengine; +use Symfony\Component\DomCrawler\Crawler; class Goyax extends Searchengine { public $results = []; - function __construct (\SimpleXMLElement $engine, \App\MetaGer $metager) + function __construct (\SimpleXMLElement $engine, \App\MetaGer $metager) { parent::__construct($engine, $metager); } public function loadResults ($result) { - die($result); - $results = trim($result); - foreach( explode("\n", $results) as $result ) + $crawler = new Crawler($result); + $crawler->filter('tr.treffer')->each(function (Crawler $node, $i) { - - $res = explode("|", $result); - if(sizeof($res) < 3) - { - continue; - } - $title = $res[0]; - $link = $res[2]; + $title = $node->filter('td.name')->text(); + $link = "http://www.goyax.de" . $node->filter('td.name > a')->attr('href'); $anzeigeLink = $link; - $descr = $res[1]; + $descr = "Aktie: " . $node->filter('td.waehrung')->text() . " " . $node->filter('td.isin')->text(); $this->counter++; $this->results[] = new \App\Models\Result( @@ -39,9 +33,10 @@ class Goyax extends Searchengine $descr, $this->gefVon, $this->counter - ); - } + ); + } ); + } -} \ No newline at end of file +} diff --git a/app/Models/parserSkripte/Loklak.php b/app/Models/parserSkripte/Loklak.php new file mode 100644 index 000000000..b0aea9ac1 --- /dev/null +++ b/app/Models/parserSkripte/Loklak.php @@ -0,0 +1,43 @@ +<?php + +namespace app\Models\parserSkripte; +use App\Models\Searchengine; +use Log; + +class Loklak extends Searchengine +{ + public $results = []; + + function __construct (\SimpleXMLElement $engine, \App\MetaGer $metager) + { + parent::__construct($engine, $metager); + } + + public function loadResults ($result) + { + if(!$result) + { + return; + } + $results = json_decode($result, true); + if( !isset($results['statuses']) ) + return; + foreach($results['statuses'] as $result) + { + $title = $result["screen_name"]; + $link = $result['link']; + $anzeigeLink = $link; + $descr = $result["text"]; + $this->counter++; + $this->results[] = new \App\Models\Result( + $this->engine, + $title, + $link, + $anzeigeLink, + $descr, + $this->gefVon, + $this->counter + ); + } + } +} -- GitLab