Biblioteca PHP para buscar cursos automaticamente no site da Alura, usando scraping com Guzzle e Symfony DomCrawler.
Via Composer:
composer require athena272/php-course-search-enginerequire 'vendor/autoload.php';
use Athena272\CourseSearchEngine\Models\CourseFetcher;
use GuzzleHttp\Client;
use Symfony\Component\DomCrawler\Crawler;
$client = new Client([
'verify' => false,
'base_uri' => 'https://www.alura.com.br/'
]);
$crawler = new Crawler();
$fetcher = new CourseFetcher($client, $crawler);
try {
$courses = $fetcher->getCourses('/cursos-online-programacao/php');
foreach ($courses as $course) {
echo $course . PHP_EOL;
}
} catch (\GuzzleHttp\Exception\GuzzleException $e) {
echo 'Error: ' . $e->getMessage();
}composer install
composer test- guzzlehttp/guzzle
- symfony/dom-crawler
- symfony/css-selector