![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Добрый день
Есть компонент idHTTP1, с помощью которого можно закачать код ХТМЛ-страницы, указав УРЛ страницы. В общем все работает (кроме фреймов, сайтов с редиректом, и есть проблемы со шрифтами) НО, если задать адрес Ya.ru, выскакивает 301 ошибка и страница сервиса не загружается. Вопрос для знатоков ИНДИ 10 (РАД2010): 1. если предварительно отослать запрос (через POST ввести словосочетание для поиска, ну скажем "купить телевизор") в строку ввода поиска на Яндексе, получится ли закачать первую страницу ответа Яндекса? Или всетаки нужно это делать через ТВебБраузер? 2. что то страницы с отдельных сайтов закакчиваются с кракозябрами, или вообще тексты с кириллицей не закачиваются, закачиваются только то что написано латиницей. С этим что то сделать можно? Если можно, то как? Всем ответившим по делу спасибо. |
#2
|
||||
|
||||
![]() - IdHTTP1.HandleRedirects:=True;
- :=UTF8Decode(IdHTTP1.Get('')); - да, вернется первая страница результатов поиска - фреймы нужно запрашивать отдельно (разбирать страницу). это уже HTML, а не HTTP ![]() Пишу программы за еду. __________________ |
#3
|
|||
|
|||
![]() NumLock, спасибо
еще вопрос что лучше с точки зрения неполучения бана по ИП-адресу от поисковой системы - использовать стандартный метод (ПОСТ) для вставки словосочетания в строку запроса ПС или так - http://yandex.ru/yandsearch?text=%EA... %E8%E7%EE%F0 конечно если кто в курсе |
#4
|
|||
|
|||
![]() Дополнительно
:=UTF8Decode(IdHTTP1.Get('')); - не работает так же как и System.Utf8ToAnsi(IdHTTP1.Get(''));, причем одинаково к примеру на http://forums.kuban.ru вообще кириллицу не грузит, пустые места вместо букв, зато латиница в норме в других случаях грузит каркозябры |
#5
|
||||
|
||||
![]() Как я вижу, используется RAD Studio 2010. У него Unicode включен по умолчанию. Так что тут, в случае с кракозябрами, стоит преобразовывать строку наоборот: UTF8Encode.
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#6
|
|||
|
|||
![]() Результаты:
если использовать Код:
Memo1.Text := IdHttp1.Get(text); если использовать Код:
Memo1.Text := UTF8Encode(IdHttp1.Get(text)); http://delphiexpert.ru/view_download.php?id=112 Что бы это все значило? |