PHP эмулирует переход на веб-страницу, которая постоянно меняет cookie - PullRequest
0 голосов
/ 16 мая 2018

У меня есть веб-страница, на которую я хотел бы перейти программно с PHP.Я могу перейти на эту веб-страницу «вручную» с помощью Chrome, щелкнуть правой кнопкой мыши «проверить элемент» и найти файл cookie, который используется при посещении страницы.

Затем я создал контекст с помощью PHP, например:

$opts = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Accept-language: en\r\n" .
              "Cookie:bla bla bla\r\n".
              "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.89 Safari/537.36"
  )
);


$context = stream_context_create($opts);

и это будет работать несколько раз .... но очень быстро он перестает работать.Когда я снова захожу на веб-страницу вручную, я обнаруживаю, что файл cookie изменился.

Так как же мне эмулировать этот файл cookie с помощью php?Я знаю, что когда я использую браузер вручную, каким-то образом он автоматически обновляет мой файл cookie, и мне больше не нужно об этом беспокоиться.Могу ли я получить эту информацию как-нибудь?Я читал о get_headers () и getallheaders (), но они оба дают мне заголовки ответа.Это заголовки запроса, которые меняются.

Итак ... Я застрял.

1 Ответ

0 голосов
/ 16 мая 2018

Вы можете использовать CURL и позволить ему сохранять куки между запросами.Вот SO вопрос, говорящий об этом, что вы можете взять пример из.

PHP CURL сохраняет cookie в cookiejar, но не использует его

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...