Пример #1
0
function crawl_price($provider)
{
    switch ($provider) {
        case 'Amazon':
            return crawl_amazon();
            break;
        case 'Walmart':
            return crawl_walmart();
            break;
        case 'Toysrus':
            return crawl_toysrus();
            break;
        case 'BN':
            return crawl_bn();
            break;
        case 'Target':
            return crawl_target();
            break;
        case 'LegoShop':
            return crawl_lego();
            break;
        default:
            # code...
            break;
    }
}
Пример #2
0
<?php

require_once "crawlers.php";
require_once "db_handler.php";
require_once "twitter_handler.php";
$WalmartIDs = array();
$ret = db_query("Walmart_Item LEFT JOIN DB_Set ON Walmart_Item.LegoID = DB_Set.LegoID LEFT JOIN DB_Theme ON DB_Set.ThemeID = DB_Theme.ThemeID", array("WalmartID", "Walmart_Item.LegoID AS LegoID", "ETitle AS Title", "ETheme AS Theme", "Walmart_Item.Availability AS Availability", "Price", "USPrice AS MSRP"), null);
if (!$ret->{'Status'}) {
    foreach ($ret->{'Results'} as $item) {
        $idx = $item->{'WalmartID'};
        $WalmartIDs["{$idx}"] = $item;
    }
}
echo "[Info][" . date('Y-m-d H:i:s') . "] " . count($WalmartIDs) . " items loaded from DB Table Walmart_Item\n";
$ret = crawl_walmart();
if ($ret->{'ItemCount'}) {
    $WalmartItems = $ret->{'Items'};
}
echo "[Info][" . date('Y-m-d H:i:s') . "] " . count($WalmartItems) . " items crawled from page " . $ret->{'URL'} . "\n";
if (count($WalmartItems) < count($WalmartIDs) * 0.6) {
    send_Message(NOTIFICATION_RECIPIENT, "Only " . count($WalmartItems) . " items crawled from walmart.com, out of " . count($WalmartIDs) . " items in DB.");
}
$arrNoupdate = array();
foreach ($WalmartItems as $item) {
    $walmartID = $item->{'WalmartID'};
    if (isset($WalmartIDs["{$walmartID}"])) {
        $info = $WalmartIDs["{$walmartID}"];
        $msrp = $info->{'MSRP'};
        $price = $item->{'Price'};
        if ($msrp && $price) {
            $rate = round($price / $msrp * 100, 2);