PHP code example of jez500 / web-scraper-for-laravel
1. Go to this page and download the library: Download jez500/web-scraper-for-laravel library. Choose the download type require. 2. Extract the ZIP file and open the index.php. 3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
jez500 / web-scraper-for-laravel example snippets
use Jez500\WebScraperForLaravel\Facades\WebScraper;
// Get an instance of the scraper with the body of the page loaded.
$scraper = WebScraper::http()->from('https://example.com')->get();
// Get the full page body
$body = $scraper->getBody();
// Get the first title element
$title = $scraper->getSelector('title')->first();
// Get the content attribute of the first meta tag with property og:image
$image = $scraper->getSelector('meta[property=og:image]|content')->first();
// Get all paragraph innerHtml as an array
$links = $scraper->getSelector('p')->all();
// Get the first h1 element using XPath
$h1 = $scraper->getXpath('//h1')->first();
// Get the href attribute of the first link using XPath
$linkHref = $scraper->getXpath('//a', 'attr', ['href'])->first();
// Get values from the page via regex
$author = $scraper->getRegex('~"user"\:"(.*)"~')->first();
// Get JSON data
$author = WebScraper::http()
->from('https://example.com/page.json')
->get()
->getJson('user.name')
->first();
// Get title from a javascript rendered page
$title = WebScraper::api()
->from('https://example.com')
->get()
->getSelector('title')
->first();