Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 16.11.2011, 12:05   #1
Зод
Форумчанин
 
Регистрация: 25.08.2011
Сообщений: 140
По умолчанию Парсинг страницы

Как можно вытянуть значение a4b7d24dede5c6c23a? Моя любимая регулярка просто отказывается работать при экранировании символов.
Код:
 <div class="like_wrap fl_r" onmouseover="wall.likeOver('908292_2')" onmouseout=
"wall.likeOut('908292_2')" onclick="wall.like('908292_2', 'a4b7d24dede5c6c23a'); 
event.cancelBubble = true;">
Зод вне форума
Старый 16.11.2011, 14:26   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,829
По умолчанию

в лоб:
pos на onclick
pos на , c предыдущего места
pos на )
два индекса есть, строка между ними
p51x вне форума
Старый 16.11.2011, 20:18   #3
Зод
Форумчанин
 
Регистрация: 25.08.2011
Сообщений: 140
По умолчанию

Вот так получилось:
Код:
  s:=Memo1.Text; //здесь грузится страница из файла
  g:=Copy(s,Pos('onclick="wall.like(' + #39 + edit5.text + '_' + edit6.text,s),Pos(';',s)-1);
  p:=Copy(g,Pos(' ',g),Pos('v',g)-1);
  t:=Copy(p,3,Pos(')',p)-1);
  word:=Copy(t,1,Pos(#39,t)-1);
Спасибо, работает.
P.S. кто-нибудь знает как запихнуть в string напрямую документ страницы?
Зод вне форума
Старый 16.11.2011, 20:27   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
P.S. кто-нибудь знает как запихнуть в string напрямую документ страницы?
Код:
s:=idhttp1.Get(<>);
это если Indy.
если TWebBrowser, то было массу раз(там простобольше кода, чтоб его помнить)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 16.11.2011, 20:34   #5
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

Лучше запихивай страницу в лист его потом построчно легче обрабатывать

Код:
var
HTTPList: TStringList;
i: integer;
begin
//Создаем лист
HTTPList:= TStringList.create;
//запихиваем страницу в лист
HTTPList.add(idhttp1.Get(<>));
//Здесь обрабатываешь построчно
for i:=0 to HTTPList.count-1 do
//Ищем нужное значение в строках
if Pos('onclick="wall.like(', AnsiLowerCase(HTTPList[i]))<>0 then
begin
//твой код для обработки найденого значения в строке
end;
//Уничтожаем лист
HTTPList.free;

Последний раз редактировалось Aliens_wolfs; 16.11.2011 в 21:50.
Aliens_wolfs вне форума
Старый 16.11.2011, 20:36   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

HTML как бы не много смысла построчно обрабатывать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 16.11.2011, 20:42   #7
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

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

Последний раз редактировалось Aliens_wolfs; 16.11.2011 в 21:47.
Aliens_wolfs вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг страницы uodz Фриланс 3 01.11.2011 18:11
Парсинг html страницы Eldrich HTML и CSS 6 07.02.2011 01:25
Парсинг XML страницы record222 Общие вопросы Delphi 3 06.04.2010 18:07
Парсинг страницы Terikon Общие вопросы Delphi 3 04.04.2009 00:32
парсинг страницы seoanalyzer Общие вопросы Delphi 3 13.02.2009 12:50