PHP code example of scrapify-dev / api-tools

1. Go to this page and download the library: Download scrapify-dev/api-tools 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/ */

    

scrapify-dev / api-tools example snippets


'providers' => [
    Scrapify\ApiTools\ApiToolsServiceProvider::class,
],

use Scrapify\ApiTools\ApiService;

$apiService = new ApiService();

try {
    $response = $apiService->callApi(
        'https://api.example.com/data', // Endpoint
        'GET',                          // Method
        ['param1' => 'value1'],          // Payload
        'Bearer',                        // Auth type
        ['token' => 'your_auth_token'],  // Auth data
        ['X-Custom-Header' => 'MyValue'] // Headers
    );

    $data = $response->json();
} catch (\Exception $e) {
    echo $e->getMessage();
}

use Scrapify\ApiTools\ApiScrapeService;

$scraper = new ApiScrapeService();

// Extract links & emails
$result = $scraper->scrape(
    'https://example.com',
    'specific',
    ['link', 'email']
);

// Screenshot
$screenshot = $scraper->scrape(
    'https://example.com',
    'screenshot'
);

use Scrapify\ApiTools\Exports\DynamicExport;

$rows = [
    ['John Doe', '[email protected]'],
    ['Jane Smith', '[email protected]'],
];

$headings = ['Name', 'Email'];

$export = new DynamicExport($rows, $headings);

// Get arrays
$headingsArray = $export->getHeadings();
$rowsArray = $export->getRows();

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Cell\Coordinate;
use Scrapify\ApiTools\Exports\DynamicExport;

// Prepare export
$export = new DynamicExport($rows, $headings);

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();

// Headings
foreach ($export->getHeadings() as $col => $heading) {
    $colLetter = Coordinate::stringFromColumnIndex($col + 1);
    $sheet->setCellValue($colLetter . '1', $heading);
}

// Rows
foreach ($export->getRows() as $rowIndex => $row) {
    foreach ($row as $colIndex => $value) {
        $colLetter = Coordinate::stringFromColumnIndex($colIndex + 1);
        $sheet->setCellValue($colLetter . ($rowIndex + 2), $value);
    }
}

// Save file
$writer = new Xlsx($spreadsheet);
$writer->save('exported_data.xlsx');