Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите с cURL

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
tirro
Отправлено: 21 Июня, 2019 - 22:56:20
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2019  


Помог: 0 раз(а)




Всем привет! Пытаюсь парсить курсы с обенников для мониторинга. На некоторых сайтах работает без проблем, на некоторых возвращает пустую страницу.

Вот этот урл https://xebit[dot]ru/export-rates-xml - работает!
Вот этот урл https://ru-change[dot]cc/request-exp[dot][dot][dot]txml[dot]xml?lang=ru - НЕ РАБОТАЕТ!

Перепробовал все что описано в интернете: устанавливал куки, эмитировал браузер, включал проверку SSL, таймауты, кодировки. Ничего не помогает.

Я не очень хорошо разбираюсь как проанализировать ответы сервера и что куда перенаправляет, поэтому прошу помощи. Кто понимает в чем может быть проблема?

PHP:
скопировать код в буфер обмена
  1.  
  2. $ch = curl_init();
  3.  
  4.         curl_setopt($ch, CURLOPT_URL, $url);
  5.         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  6.         curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  7.         curl_setopt($ch, CURLOPT_HEADER, true);
  8.  
  9.         $output = curl_exec($ch);
  10.         $info = curl_getinfo($ch);
  11.         curl_close($ch);
  12.        
  13.         echo $output;
  14.        
  15.         foreach ($info as $key => $value) {
  16.                 echo "{$key} => {$value}";
  17.                 echo '<br>';
  18.         }
  19.  
 
 Top
Vladimir Kheifets
Отправлено: 22 Июня, 2019 - 20:25:14
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 37 раз(а)




tirro пишет:
Всем привет! Пытаюсь парсить курсы с обенников для мониторинга. На некоторых сайтах работает без проблем, на некоторых возвращает пустую страницу.

Вот этот урл https://xebit[dot]ru/export-rates-xml - работает!
Вот этот урл https://ru-change[dot]cc/request-exp[dot][dot][dot]txml[dot]xml?lang=ru - НЕ РАБОТАЕТ!

Перепробовал все что описано в интернете: устанавливал куки, эмитировал браузер, включал проверку SSL, таймауты, кодировки. Ничего не помогает.

Я не очень хорошо разбираюсь как проанализировать ответы сервера и что куда перенаправляет, поэтому прошу помощи. Кто понимает в чем может быть проблема?

PHP:
скопировать код в буфер обмена
  1.  
  2. $ch = curl_init();
  3.  
  4.         curl_setopt($ch, CURLOPT_URL, $url);
  5.         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  6.         curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  7.         curl_setopt($ch, CURLOPT_HEADER, true);
  8.  
  9.         $output = curl_exec($ch);
  10.         $info = curl_getinfo($ch);
  11.         curl_close($ch);
  12.        
  13.         echo $output;
  14.        
  15.         foreach ($info as $key => $value) {
  16.                 echo "{$key} => {$value}";
  17.                 echo '<br>';
  18.         }
  19.  

Добрый день!
Не совсем понятно, что не работает во втором случае.
Выдаётся XML, как и в первом случае.
Если же же Вы хотите увидеть нечто неприятное, попробуйте изменить код так:
Спойлер (Отобразить)
Удачи!

(Отредактировано автором: 23 Июня, 2019 - 07:26:12)

 
 Top
tirro
Отправлено: 24 Июня, 2019 - 16:04:55
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Июнь 2019  


Помог: 0 раз(а)




Большое спасибо!

Ваш код показал код ошибки (35 - проблемы с SSL). Теперь стало понятно куда копать. Отключение проверки SSL в опциях курла не помогало.

В итоге оказалось, что установленная на сервере OpenSSL была устаревшая и через это возникал конфликт. Перешел на хостинге на обновленный сервер и проблема исчезла.
Еще раз спасибо!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB