예제 #1
0
function main()
{
    global $argv;
    if (count($argv) != 3) {
        die("{$argv['0']}: usage {$argv['0']} [user] [pass]\n");
    }
    $opts = array();
    $opts['username'] = $argv[1];
    $opts['password'] = $argv[2];
    // $opts['debug'] = 1; uncomment if having trouble
    $s = new Snaphax($opts);
    $result = $s->login();
    var_dump($result);
    if (empty($result) || empty($result['snaps'])) {
        echo "no snaps";
        exit;
    }
    foreach ($result['snaps'] as $snap) {
        if ($snap['st'] == SnapHax::STATUS_NEW) {
            echo "fetching {$snap['id']}\n";
            $blob_data = $s->fetch($snap['id']);
            if ($blob_data) {
                if ($snap['m'] == SnapHax::MEDIA_IMAGE) {
                    $ext = '.jpg';
                } else {
                    $ext = '.mp4';
                }
                file_put_contents($snap['sn'] . $snap['id'] . $ext, $blob_data);
            }
        }
    }
}
예제 #2
0
<?php

require_once './snaphax.php';
$key = 'somekey';
if (!isset($_GET['d'])) {
    die('no data');
}
$data = unserialize(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, base64_decode($_GET['d']), MCRYPT_MODE_ECB));
$opts = array();
$opts['username'] = $data['u'];
$s = new Snaphax($opts);
$s->auth_token = $data['at'];
header("Content-Type: image/png");
$blob_data = $s->fetch($data['id']);
echo $blob_data;