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 :: Парсинг страницы с не простой кодировкой

 PHP.SU

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


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

> Описание: Парсинг страницы с не простой кодировкой
pernik
Отправлено: 12 Февраля, 2019 - 18:10:14
Post Id


Новичок


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


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




Всем гуру PHP привет, пытаюсь спарсить эту http://david[dot]kh[dot]ua/ страницу, но на выходе получаю битую кодировку, может кто что подскажет.
 
 Top
Vladimir Kheifets
Отправлено: 13 Февраля, 2019 - 07:35:01
Post Id



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


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


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




Добрый день!
Неплохо бы было увидеть Ваш pattern.
Вы не зaбыли добавить в pattern u ?
Например, '/................../u'
см.
https://maxivak[dot]com/working-with[dot][dot][dot]-strings-in-php/
Удачи!
 
 Top
pernik
Отправлено: 13 Февраля, 2019 - 11:42:46
Post Id


Новичок


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


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




Vladimir Kheifets пишет:
Добрый день!
Неплохо бы было увидеть Ваш pattern.
Вы не зaбыли добавить в pattern u ?
Например, '/................../u'
см.
https://maxivak[dot]com/working-with[dot][dot][dot]-strings-in-php/
Удачи!


Да там явно не UTF-8, я предпологаю что там кодируют html при обращении с другого сервера. Не знаю можно ли это как то обойти ?
 
 Top
Vladimir Kheifets
Отправлено: 13 Февраля, 2019 - 20:40:14
Post Id



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


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


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




pernik пишет:
Да там явно не UTF-8, я предпологаю что там кодируют html при обращении с другого сервера. Не знаю можно ли это как то обойти ?


там явно не UTF-8? см. что там
CODE (html):
скопировать код в буфер обмена
  1. <!DOCTYPE html>
  2. <html lang="ru-RU">
  3. <head>
  4.  <meta charset="UTF-8">
  5. <title>Давид | Давид- наружная реклама Харьков</title>
  6.  <meta name="viewport" content="width=device-width" />
  7. <link rel="shortcut icon" href="/favicon.png" type="image/x-icon">
  8.  <link rel="icon" href="/favicon.png" type="image/x-icon">
  9. ..........................................................
  10. ..........................................................

(Отредактировано автором: 13 Февраля, 2019 - 22:48:35)

 
 Top
pernik
Отправлено: 14 Февраля, 2019 - 10:34:57
Post Id


Новичок


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


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




Vladimir Kheifets пишет:
pernik пишет:
Да там явно не UTF-8, я предпологаю что там кодируют html при обращении с другого сервера. Не знаю можно ли это как то обойти ?


там явно не UTF-8? см. что там
CODE (html):
скопировать код в буфер обмена
  1. <!DOCTYPE html>
  2. <html lang="ru-RU">
  3. <head>
  4.  <meta charset="UTF-8">
  5. <title>Давид | Давид- наружная реклама Харьков</title>
  6.  <meta name="viewport" content="width=device-width" />
  7. <link rel="shortcut icon" href="/favicon.png" type="image/x-icon">
  8.  <link rel="icon" href="/favicon.png" type="image/x-icon">
  9. ..........................................................
  10. ..........................................................


А у меня это
echo file_get_contents("http://david.kh.ua");

‹н]{“ЫЦuяЯџ‹Lґ»5Бчk\U–е4ЌвШ’Э4±<; ’Ш% Й]Лљ±-»Iк4qУ¤Н¤MТДЙ4™>F¶ҐD¶e{¦џЂыЌъ;з ^д‚+j-w2#-I<оЅзЮуѕзњ»»цф7.їр­з®H]§ЯЫЫҐїROt
 
 Top
andrewkard
Отправлено: 14 Февраля, 2019 - 12:24:23
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


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




Дело не в кодировке, кодировка UTF-8, дело в сжатии

PHP:
скопировать код в буфер обмена
  1.  
  2. $ch = curl_init();
  3. curl_setopt($ch, CURLOPT_URL, "http://david.kh.ua");
  4. curl_setopt($ch,CURLOPT_ENCODING , "gzip");
  5. $html = curl_exec($ch);
  6.  
 
 Top
Vladimir Kheifets
Отправлено: 14 Февраля, 2019 - 12:26:00
Post Id



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


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


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




pernik пишет:
Vladimir Kheifets пишет:
pernik пишет:
Да там явно не UTF-8, я предпологаю что там кодируют html при обращении с другого сервера. Не знаю можно ли это как то обойти ?


там явно не UTF-8? см. что там
CODE (html):
скопировать код в буфер обмена
  1. <!DOCTYPE html>
  2. <html lang="ru-RU">
  3. <head>
  4.  <meta charset="UTF-8">
  5. <title>Давид | Давид- наружная реклама Харьков</title>
  6.  <meta name="viewport" content="width=device-width" />
  7. <link rel="shortcut icon" href="/favicon.png" type="image/x-icon">
  8.  <link rel="icon" href="/favicon.png" type="image/x-icon">
  9. ..........................................................
  10. ..........................................................


А у меня это
echo file_get_contents("http://david.kh.ua");

‹н]{“ЫЦuяЯџ‹Lґ»5Бчk\U–е4ЌвШ’Э4±<; ’Ш% Й]Лљ±-»Iк4qУ¤Н¤MТДЙ4™>F¶ҐD¶e{¦џЂыЌъ;з ^д‚+j-w2#-I<оЅзЮуѕзњ»»цф7.їр­з®H]§ЯЫЫҐїROt


Добрый день!
Попробуйте сделать так:
Спойлер (Отобразить)
Это результат( в нём, например, NULL ["textContent"]=> string(12120) "Давид | Давид- наружная реклама Харьков):
Спойлер (Отобразить)
cм. https://stackoverflow[dot]com/questi[dot][dot][dot]rl-utf-8-charset
Удачи!

(Отредактировано автором: 14 Февраля, 2019 - 12:37:39)

 
 Top
pernik
Отправлено: 14 Февраля, 2019 - 18:07:37
Post Id


Новичок


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


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




Спасибо, помогло !!!
 
 Top
LIME
Отправлено: 16 Февраля, 2019 - 09:27:17
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


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




Vladimir Kheifets не думал что скажу такую гадость...
Ты молодец
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB