diff --git a/src/Parsers/HtmlParser.php b/src/Parsers/HtmlParser.php index c8717cf..83b34d8 100644 --- a/src/Parsers/HtmlParser.php +++ b/src/Parsers/HtmlParser.php @@ -11,6 +11,8 @@ use Dusterio\LinkPreview\Readers\HttpReader; use Dusterio\LinkPreview\Models\HtmlPreview; use Symfony\Component\DomCrawler\Crawler; +use GuzzleHttp\Psr7\Uri; +use GuzzleHttp\Psr7\UriResolver; /** * Class HtmlParser @@ -180,6 +182,11 @@ protected function parseHtml(LinkInterface $link) if (!isset($cover) && count($images)) $cover = $images[0]; + $coverUri = new Uri($cover); + if (!Uri::isAbsolute($coverUri)) { + $cover = (string) UriResolver::resolve($link->getEffectiveUrl(), $coverUri); + } + return compact('cover', 'title', 'description', 'images', 'video', 'videoType'); } }