LINUX.ORG.RU

История изменений

Исправление KRoN73, (текущая версия) :

Скажите, видел кто нибуть код на php - который мог бы скачивать страницу используя куки и перенаправления?

composer require guzzle/guzzle=*

Там тебе механизм с автоматическим учётом сессий и кук. Что-то типа (кусок из реального кода):

require 'vendor/autoload.php';

use Guzzle\Http\Client;
use Guzzle\Plugin\Cookie\CookiePlugin;
use Guzzle\Plugin\Cookie\CookieJar\ArrayCookieJar;

$cookiePlugin = new CookiePlugin(new ArrayCookieJar());

$session_request    = [ 'req' => [[
                            'username' => $login,
                            'productType' => 'XXXX',
                            'password' => $passwd,
                        ]]
                    ];

$client = new Client();
$client->addSubscriber($cookiePlugin);

// Инициируем куки
$client->post($login_url, [ 'Accept' => 'application/json', 'Content-type' => 'application/json'], json_encode($session_request))
    ->send();

// Получаем данные
$csv_string = (string) $client->get($currency_url)
    ->send()
    ->getBody();

https://github.com/guzzle/guzzle

http://docs.guzzlephp.org/en/latest/

Исправление KRoN73, :

Скажите, видел кто нибуть код на php - который мог бы скачивать страницу используя куки и перенаправления?

composer require guzzle/guzzle=*

Там тебе механизм с автоматическим учётом сессий и кук. Что-то типа (кусок из реального кода):

require 'vendor/autoload.php';

use Guzzle\Http\Client;
use Guzzle\Plugin\Cookie\CookiePlugin;
use Guzzle\Plugin\Cookie\CookieJar\ArrayCookieJar;

$cookiePlugin = new CookiePlugin(new ArrayCookieJar());

$session_request    = [ 'req' => [[
                            'username' => $login,
                            'productType' => 'XXXX',
                            'password' => $passwd,
                        ]]
                    ];

$client = new Client();
$client->addSubscriber($cookiePlugin);

// Инициируем куки
$client->post($login_url, [ 'Accept' => 'application/json', 'Content-type' => 'application/json'], json_encode($session_request))
    ->send();

// Получаем данные
$csv_string = (string) $client->get($currency_url)
    ->send()
    ->getBody();

https://github.com/guzzle/guzzle http://docs.guzzlephp.org/en/latest/

Исходная версия KRoN73, :

Скажите, видел кто нибуть код на php - который мог бы скачивать страницу используя куки и перенаправления?

composer require guzzle/guzzle=*

Там тебе механизм с автоматическим учётом сессий и кук. Что-то типа (кусок из реального кода):

require 'vendor/autoload.php';

use Guzzle\Http\Client;
use Guzzle\Plugin\Cookie\CookiePlugin;
use Guzzle\Plugin\Cookie\CookieJar\ArrayCookieJar;

$cookiePlugin = new CookiePlugin(new ArrayCookieJar());

$session_request    = [ 'req' => [[
                            'username' => $login,
                            'productType' => 'XXXX',
                            'password' => $passwd,
                        ]]
                    ];

$client = new Client();
$client->addSubscriber($cookiePlugin);

// Инициируем куки
$client->post($login_url, [ 'Accept' => 'application/json', 'Content-type' => 'application/json'], json_encode($session_request))
    ->send();

// Получаем данные
$csv_string = (string) $client->get($currency_url)
    ->send()
    ->getBody();

https://github.com/guzzle/guzzle