Ao executar o código, a saída foi a seguinte no terminal:
PHP Fatal error: Uncaught GuzzleHttp\Exception\RequestException: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/lib
curl-errors.html) in I:\arquivos\cursos\alura\cursos-alura\php\composer\buscador-cursos-alura\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:201
O arquivo compose.json:
{
"name": "leonardomorita/buscador-cursos",
"description": "Projeto que busca os cursos do site da Alura.",
"type": "library",
"authors": [
{
"name": "leonardomorita",
"email": "leonardomorita2@gmail.com"
}
],
"require": {
"guzzlehttp/guzzle": "^6.5",
"symfony/dom-crawler": "^5.0",
"symfony/css-selector": "^5.0"
}
}
O arquivo buscador-cursos.php:
<?php
require_once 'vendor/autoload.php';
use GuzzleHttp\Client;
use Symfony\Component\DomCrawler\Crawler;
$client = new Client();
$resposta = $client->request('GET', 'https://www.alura.com.br/cursos-online-programacao/php');
$html = $resposta->getBody();
$crawler = new Crawler($html);
$cursos = $crawler->filter('span.card-curso__nome');
foreach ($cursos as $curso) {
echo $curso->textContent . PHP_EOL;
}
Obrigado pela ajuda.