|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Вопрос о показе части сайта
Здравствуйте уважаемые пользователи.Нужна ваша помощь. Как на делфи это реализовать: Допустим есть сайт(неважно какой), на этом сайте есть информация(Любая, например текст погоды).Смысл в том что эта информация занимает очень малую часть сайта. Вопрос: Как на делфи вывести именно тот кусок сайта, который мне нужен.Не выводя при этом весь сайт
Спасибо |
#2
|
|||
|
|||
Собственно ап! Извините уж, просто очень нужно решение этой проблемы
|
#3
|
||||
|
||||
1. Получаем страницу. (GetInetFile мелькала в FAQ)
2. Загружаем в стринглист. 3. Ищем нужную часть по заголовку, строкам или ещё чему. Не забываем, что страница содержит кроме текста ещё и HTML теги. 4. Сохраняем в файл. 5. Через TWebBrowser выкидываем на форму. Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#4
|
|||
|
|||
DJ PhoeniX Спасибо, вроде алгоритм понятен
PS Разве через GetInetFile можно загрузить страницу? Мне казалось что только файлы. Может можно сделать как нить через indy или Synapse? PPS Чтото не получается получить страницу. Может есть исходник? Последний раз редактировалось 1DarkAngel1, 15.05.2009 в 21:08. |
#5
|
||||
|
||||
Какой части исходник? Это?
Код:
uses WinInet; function GetInetFile(const fileURL, FileName: string): boolean; type DWORD: LongWord; //Это чтоб лишних тяжеловесов не подключать const BufferSize = 1024; var hSession, hURL: HInternet; Buffer: array[1..BufferSize] of Byte; BufferLen: DWORD; f: file; begin hSession := InternetOpen(PChar('Mozilla'), //Вместо "Mozilla" ставь что хочешь INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0); try hURL := InternetOpenURL(hSession, PChar(fileURL), nil,0,0,0); try AssignFile(f, FileName); Rewrite(f,1); repeat InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen); BlockWrite(f, Buffer, BufferLen) until BufferLen = 0; CloseFile(f); Result:=True; finally InternetCloseHandle(hURL) end; finally InternetCloseHandle(hSession) end; end; Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#6
|
|||
|
|||
Так с эти более менее разобрался. Но проблема, когда скачиваю страницы у них вместо русских символов каракозябры. Как это исправить?
|
#7
|
||||
|
||||
Видимо сайт в UTF... Для перекодирования была функция, а вот где - хз... пояндекси
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#8
|
|||
|
|||
Все нашел. Теперь еще два вопроса:
Как можно изменять размеры TWebbrowser во время работы приложения? И как убрать ползунки у TWebbrowser? Спасибо |
#9
|
||||
|
||||
РАЗ:
Код:
WebBrowser1.Width:= ... ; // вместо многоточия ширину... WebBrewser1.Height:= ... ; // ...и высоту Копайся в ДелфиВорлде, была статья про убирание скроллов... Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#10
|
|||
|
|||
Хех спасибо. Но я немного другое хотел. Типа взял за уголок перетащил и изменил тем самым размеры
|
#11
|
||||
|
||||
Это уже надо с мышью играть... Как - не ко мне. Хотя, могу попробовать накидать что-либо похожее... Но двумя строчками кода это не обойдётся.
=========== Или, как вариант, поставить Код:
WebBrowser1.Align:=alClient; Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj Последний раз редактировалось PhoeniX, 20.05.2009 в 13:25. |
#12
|
|||
|
|||
Цитата:
Цитата:
Хмммммм может пока что нибудь из этого сделать попробую. |
#13
|
|||
|
|||
Редактирование размера окон во время работы приложения я сделал теперь чтото с скролл баром. Сделал 4 кнопки. 2 включения и 2 выключения скроллов. 3 работают прекрасно(Показ Х, скрыть Y, скрыть Х).
А вот Y показываться никак не хочет. Делал через Цитата:
|
#14
|
||||
|
||||
Во общем берешь компонент IDHTTP
Пишешь: Код:
переменная:=idhttp1.get('http://nanoteam.net'); Последний раз редактировалось Casper-Hacker, 28.05.2009 в 00:47. |
#15
|
|||
|
|||
Casper-Hacker спасибо но я уже немного по другому сделал. Сначало получил страницу, потом выбрал нужную часть, потом сохранил как jpeg.
|