403Webshell
Server IP : 80.211.21.168  /  Your IP : 216.73.217.33
Web Server : Apache
System : Linux alex-webdesign.it 3.10.0-1160.119.1.el7.tuxcare.els22.x86_64 #1 SMP Mon Aug 18 06:07:12 UTC 2025 x86_64
User : admin_japan ( 10003)
PHP Version : 8.2.32
Disable Function : opcache_get_status
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/vhosts/cerchijapan.it/ai4dealers.com/MRC/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/vhosts/cerchijapan.it/ai4dealers.com/MRC/_conce.php
<?php
// Nome del file CSV di output
$outputFile = __DIR__ . '/dealers.csv';

// Apri il file in scrittura
if (!$fp = fopen($outputFile, 'w')) {
    die("Errore: impossibile aprire $outputFile in scrittura\n");
}

// Intestazione CSV (pipe-delimited)
fputcsv($fp, ['CompanyName', 'Address', 'Città', 'Provincia'], '|');

$baseUrl    = 'https://www.autoscout24.it/dealer-search/api/';
$size       = 200;
$pageIndex  = 1;

// --- Prima chiamata per determinare il numero di pagine ---
$initialUrl = sprintf(
    '%s?country=IT&companyName=&services=&makes=&pageIndex=%d&size=%d&sortBy=best',
    $baseUrl,
    $pageIndex,
    $size
);

$ch = curl_init($initialUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
if (curl_errno($ch)) {
    die("cURL error: " . curl_error($ch) . "\n");
}
curl_close($ch);

$data = json_decode($response, true);
if (!isset($data['numberOfPages'])) {
    die("Risposta API inattesa, manca 'numberOfPages'.\n");
}

$totalPages = (int) $data['numberOfPages'];
echo "Totale pagine da processare: $totalPages\n";

// --- Loop su tutte le pagine ---
for ($page = 1; $page <= $totalPages; $page++) {
    $url = sprintf(
        '%s?country=IT&companyName=&services=&makes=&pageIndex=%d&size=%d&sortBy=best',
        $baseUrl,
        $page,
        $size
    );

    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $resp = curl_exec($ch);
    if (curl_errno($ch)) {
        echo "cURL error alla pagina $page: " . curl_error($ch) . "\n";
        curl_close($ch);
        continue;
    }
    curl_close($ch);

    $pageData = json_decode($resp, true);
    if (empty($pageData['results'])) {
        echo "Nessun risultato alla pagina $page\n";
        continue;
    }

    foreach ($pageData['results'] as $dealer) {
        $companyName = $dealer['companyName'] ?? '';

        // Split dell'indirizzo
        $parts = array_map('trim', explode(' - ', $dealer['address'] ?? ''));

        $address  = $parts[0] ?? '';
        $city     = $parts[1] ?? '';
        $province = '';
        if (isset($parts[2])) {
            // rimuovo eventuale ", IT" o simili
            $provSplit = explode(',', $parts[2]);
            $province  = trim($provSplit[0]);
        }

        // Scrive la riga pipe-delimited
        fputcsv($fp, [$companyName, $address, $city, $province], '|');
    }

    echo "Pagina $page di $totalPages elaborata.\n";
}

// Chiudi il file CSV
fclose($fp);
echo "Operazione completata. File creato: $outputFile\n";

Youez - 2016 - github.com/yon3zu
LinuXploit