switched the press to a virtual feed

This commit is contained in:
2020-08-24 14:51:49 +05:00
parent 36753d077b
commit 0902d9da43
2 changed files with 39 additions and 1 deletions

View File

@@ -0,0 +1,37 @@
<?php
namespace App\Services\Feeds;
use Goutte\Client;
class ThePressFeed
{
protected $client;
public function __construct()
{
$this->client = new Client();
}
/**
* Get all the latest news
*
* @return array
*/
public function get() : array
{
$crawler = $this->client->request('GET', "https://thepress.mv/");
$feeds = [];
$crawler->filter('div[class*="col-lg-3 col-lg-cm-5 col-md-6 col-6"] a')->each(function($node) use (&$feeds){
$feeds[] = [
"title" => $node->text(),
"link" => $node->attr('href')
];
});
return $feeds;
}
}

View File

@@ -3,6 +3,7 @@
namespace App\Services;
use App\Services\Scrapers\ThePressScraper;
use App\Services\Feeds\ThePressFeed;
use Illuminate\Support\Str;
class ThePressService extends Client
@@ -15,7 +16,7 @@ class ThePressService extends Client
public function scrape(): array
{
//Return only the rss that contains "news" keyboard in its url
$articles = $this->get("https://thepress.mv/rss")["channel"]["item"];
$articles = (new ThePressFeed)->get();
$articlesitems = [];