Example #1
0
function scrap($url, $inicioDeAlbum, $url2, $hashDIR)
{
    $html = file_get_html($url);
    // Obtener imagenes de los albunes
    foreach ($html->find('.wall_block > img') as $element) {
        $imagenesLinks = $element->src;
        // Si la imagen se repite, y no es la primera del album la funcion se termina
        if (strcasecmp($imagenesLinks, $inicioDeAlbum) == false && !$GLOBALS['scrapOne']) {
            // crear un zip con las imagenes
            exec('zip -r ' . $hashDIR . ' ./fotologs/' . $_POST['name'] . "_" . $hashDIR);
            echo "hash" . $hashDIR;
            // Se termina la execucion de la funcion
            exit;
        }
        // Cambiar la terminacion para obtener la imagen mas grande
        $imaganesReady = str_replace("_t", "_f", $imagenesLinks);
        echo $imaganesReady . "\n";
        $hashrandom = substr(md5(microtime()), 1, 22);
        $hashrandom2 = substr(md5(microtime()), 1, 22);
        file_put_contents("./fotologs/" . $_POST['name'] . "_" . $hashDIR . "/" . $hashrandom . "_" . $hashrandom2 . ".jpg", file_get_contents($imaganesReady));
        // Cuando cambia de la primera esto se desactiva para permitir el cambio de pagina
        $GLOBALS['scrapOne'] = false;
    }
    // Sumar 30 a la url actual para cambiar de album (fotolog ordena los albunes de 30 en 30)
    $numero = $GLOBALS['paginacion'] = $GLOBALS['paginacion'] + 30;
    $url = $url2 . $numero;
    // Empezar el proceso nuevamente con la url actualizada en la paginacion
    scrap($url, $inicioDeAlbum, $url2, $hashDIR);
}
Example #2
0
<?php

require "db_config.php";
ini_set('safe_mode', false);
date_default_timezone_set('Asia/Taipei');
scrap($db, date("Y"), date("m"), date("d"), date("Y-m-d"));
function scrap($db, $y, $m, $d, $time)
{
    $postFields = array('strYear' => $y, 'strMonth' => $m, 'strDay' => $d);
    try {
        $url = 'http://g1.taisugar.com.tw/Sugar/Sugar_show_His.asp';
        $sugar = curl($url, $postFields);
        $packtSugarXpath = returnXPathObject($sugar);
        $td = $packtSugarXpath->query('//td');
        // return DOMNodeList
        $td_title = $td->length;
        $td_first = 13;
        $td_second = 14;
        $td_third = 15;
        $td_diff = 7;
        if ($td_title > 13) {
            $pid = filter_var($td->item($td_first)->nodeValue, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
            $kg = filter_var($td->item($td_second)->nodeValue, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
            $bag = filter_var($td->item($td_third)->nodeValue, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
            $result['pid'] = clean($pid);
            $result['pricePerKg'] = $kg;
            $result['pricePerBag'] = $bag;
            $result['time'] = $time;
            while ($result['pid'] != '01021050') {
                $td_first = $td_first + $td_diff;
                $td_second = $td_second + $td_diff;
Example #3
0
         $insert = $conn->query($insertGroup);
         $returnGroup = "SELECT `id` FROM `group` WHERE `name` = '{$g}' ORDER BY `id` DESC";
         $return = $conn->query($returnGroup);
         if ($return->num_rows > 0) {
             $dbGroup = $return->fetch_assoc();
             array_push($groupId, $dbGroup['id']);
         }
     }
 }
 $selectMangaId = "SELECT `id`, `title` FROM `manga` WHERE `title` LIKE '{$title}' LIMIT 1";
 $selectMangaIdResult = $conn->query($selectMangaId);
 if ($selectMangaIdResult->num_rows > 0) {
     $dbManga = $selectMangaIdResult->fetch_assoc();
     $mangaId = $dbManga['id'];
 } else {
     $mangaId = scrap($link, $title);
 }
 $checkExistSql = "SELECT `id` FROM `release` WHERE `manga_id`='{$mangaId}' AND `volume`='{$volume}' AND `chapter`='{$chapter}' AND `date`='{$description}'";
 $checkExist = $conn->query($checkExistSql);
 if ($checkExist->num_rows == 0) {
     $insertReleaseSql = "INSERT INTO `release` (`manga_id`, `volume`, `chapter`, `date`) VALUES ('{$mangaId}','{$volume}','{$chapter}','{$description}')";
     $insertRelease = $conn->query($insertReleaseSql);
     $returnReleaseSql = "SELECT `id` FROM `release` WHERE `manga_id` = '{$mangaId}' ORDER BY `id` DESC LIMIT 1";
     $returnRelease = $conn->query($returnReleaseSql);
     if ($returnRelease->num_rows > 0) {
         $dbRelease = $returnRelease->fetch_assoc();
         $releaseId = $dbRelease['id'];
     }
     unset($mangaId);
     foreach ($groupId as $gid) {
         $insertGroupReleaseSql = "INSERT INTO `group_release`(`group_id`,`release_id`) VALUES ('{$gid}','{$releaseId}')";
Example #4
0
<?php

if (!empty($_GET['y']) && !empty($_GET['m']) && !empty($_GET['d'])) {
    require "db_config.php";
    ini_set('safe_mode', false);
    date_default_timezone_set('Asia/Taipei');
    scrap($db, $_GET['y'], $_GET['m'], $_GET['d'], date($_GET['y'] . "-" . $_GET['m'] . "-" . $_GET['d']));
} else {
    echo 'please input query year, month and day';
}
function scrap($db, $y, $m, $d, $time)
{
    $postFields = array('strYear' => $y, 'strMonth' => $m, 'strDay' => $d);
    try {
        $url = 'http://g1.taisugar.com.tw/Sugar/Sugar_show_His.asp';
        $sugar = curl($url, $postFields);
        $packtSugarXpath = returnXPathObject($sugar);
        $td = $packtSugarXpath->query('//td');
        // return DOMNodeList
        $td_title = $td->length;
        $td_first = 13;
        $td_second = 14;
        $td_third = 15;
        $td_diff = 7;
        if ($td_title > 13) {
            $pid = filter_var($td->item($td_first)->nodeValue, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
            $kg = filter_var($td->item($td_second)->nodeValue, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
            $bag = filter_var($td->item($td_third)->nodeValue, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
            $result['pid'] = clean($pid);
            $result['pricePerKg'] = $kg;
            $result['pricePerBag'] = $bag;