52 lines
2.0 KiB
PHP
Executable File
52 lines
2.0 KiB
PHP
Executable File
#! /usr/bin/php
|
|
<?php
|
|
include "config.php";
|
|
|
|
$sql = "SELECT * FROM scans WHERE site=2";
|
|
$stmt = $pdo->query($sql);
|
|
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
foreach ($data as $scan){
|
|
$document = new DOMDocument();
|
|
$document->loadHTML($scan['content']);
|
|
$table = $document->getElementById("main_table_countries_div");
|
|
$table = $table->childNodes[1];
|
|
$data = $table->childNodes[1];
|
|
$parts = $data->childNodes;
|
|
$linetotal = array();
|
|
$linetotal[] = $table->childNodes[2]->childNodes[0]->childNodes[0]->textContent;
|
|
$linetotal[] = intval(str_replace(",", "", $table->childNodes[2]->childNodes[0]->childNodes[2]->textContent));
|
|
$document = array();
|
|
$document[] = $linetotal;
|
|
for ($i = 0; $i < $parts->length; $i++) {
|
|
$country = array();
|
|
$p2 = $parts[$i]->childNodes;
|
|
$country[] = $p2[0]->textContent;
|
|
$deaths = (strpos($p2[6]->textContent, "+") !== false?0:$p2[6]->textContent);
|
|
$country[] = intval(str_replace(",", "", $p2[2]->textContent));
|
|
$country[] =intval(str_replace(",", "", $deaths));
|
|
$country[] =intval(str_replace(",", "", $p2[10]->textContent));
|
|
$country[] =intval(str_replace(",", "", $p2[12]->textContent));
|
|
$document[] = $country;
|
|
}
|
|
|
|
$scanid = $scan['id'];
|
|
|
|
foreach ($document as $entry){
|
|
$sql = "INSERT INTO `data`(`scan`, `place`, `amount`, deaths, active, cured) VALUES (?, ?, ?, ?, ?, ?)";
|
|
$stmt = $pdo->prepare($sql);
|
|
$stmt->bindParam(1, $scanid);
|
|
$stmt->bindParam(2, $entry[0]);
|
|
$stmt->bindParam(3, $entry[1]);
|
|
$stmt->bindParam(4, $entry[2]);
|
|
$stmt->bindParam(5, $entry[3]);
|
|
$stmt->bindParam(6, $entry[4]);
|
|
$stmt->execute();
|
|
if($stmt->errorInfo()[0] != '00000' and $stmt->errorInfo()[0] != '23000' and $stmt->errorInfo()[0] != '22007')
|
|
var_dump($stmt->errorInfo());
|
|
}
|
|
|
|
$sql = "UPDATE `scans` SET `parsed`=1 WHERE id=?";
|
|
$stmt = $pdo->prepare($sql);
|
|
$stmt->bindParam(1, $scanid);
|
|
$stmt->execute();
|
|
} |