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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2015, 14:02   #21
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Цитата:
Сообщение от reco1123 Посмотреть сообщение
а через каждую строку 191 выводит, это для чего сделано?
У меня так выводит:
Iron Monk вне форума Ответить с цитированием
Старый 17.02.2015, 14:17   #22
reco1123
Пользователь
 
Регистрация: 13.02.2015
Сообщений: 28
По умолчанию

у меня просто 191

if Pos('=191' у меня нету даже такого в исходном коде
reco1123 вне форума Ответить с цитированием
Старый 17.02.2015, 14:22   #23
reco1123
Пользователь
 
Регистрация: 13.02.2015
Сообщений: 28
По умолчанию

у меня 213 это я так понял от региона пользователя зависит
reco1123 вне форума Ответить с цитированием
Старый 17.02.2015, 14:23   #24
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Как вы получаете содержимое страницы (http://m.news.yandex.ru/index.html)?
В какой операционке пробуете парсить текст?
Iron Monk вне форума Ответить с цитированием
Старый 17.02.2015, 14:23   #25
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Цитата:
Сообщение от reco1123 Посмотреть сообщение
у меня 213 это я так понял от региона пользователя зависит
поменяйте в коде 191 на 213
Iron Monk вне форума Ответить с цитированием
Старый 17.02.2015, 14:25   #26
reco1123
Пользователь
 
Регистрация: 13.02.2015
Сообщений: 28
По умолчанию

а как сделать автоматическое определение региона? чтобы там могло быть любое число
reco1123 вне форума Ответить с цитированием
Старый 17.02.2015, 14:26   #27
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Цитата:
Сообщение от reco1123 Посмотреть сообщение
а как сделать автоматическое определение региона? чтобы там могло быть любое число
Сейчас уберу регион, будет везде работать.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
lst: TStringList;
IdHTTP1: TIdHTTP;
i: integer;
begin
  IdHTTP1:= TIdHTTP.Create(nil);
  lst:= TStringList.Create;
  lst.Text:=Utf8ToAnsi(idHTTP1.Get('http://m.news.yandex.ru/index.html'));
  for i:= 0 to lst.Count - 1 do
    begin
    if Pos('href="/yandsearch?', lst[i]) <> 0 then
      begin
      lst[i]:= Trim(StringReplace(lst[i], 'href="/yandsearch?', 'http://m.news.yandex.ru/yandsearch?',[rfReplaceAll]));
      Memo1.Lines.Add(Copy(lst[i], Pos('http://m.news.yandex.ru/',lst[i]), Pos('&lr=',lst[i]) - 1));
      if Pos('&lr', Memo1.Lines[Memo1.Lines.Count - 1]) <> 0 then
      Memo1.Lines[Memo1.Lines.Count - 1]:= Copy(Memo1.Lines[Memo1.Lines.Count - 1], 1, Pos('&lr',Memo1.Lines[Memo1.Lines.Count - 1]) - 1);
      end;
         if Pos('<span class="b-titles-list__link-i">', lst[i]) <> 0 then
         Memo1.Lines.Add(Copy(Trim(lst[i]), Pos('<span class="b-titles-list__link-i">',Trim(lst[i])) + 36, Pos('</span>',Trim(lst[i])) - 37));
           if Pos('/80x80"/>', lst[i])<> 0 then
           Memo1.Lines.Add(Copy(lst[i], Pos('/80x80"/>',lst[i]) + 9, 255));
             if (Trim(lst[i]) = 'class="b-titles-list__link">') and (Pos('/80x80"/>', lst[i+1]) = 0) then
             Memo1.Lines.Add(Trim(lst[i+1]));
    end;
  lst.Free;
  IdHTTP1.Free;
end;
end.

Последний раз редактировалось Iron Monk; 17.02.2015 в 14:33.
Iron Monk вне форума Ответить с цитированием
Старый 17.02.2015, 15:24   #28
reco1123
Пользователь
 
Регистрация: 13.02.2015
Сообщений: 28
По умолчанию

Спасибо большое! Теперь все как надо работает))
reco1123 вне форума Ответить с цитированием
Старый 17.02.2015, 15:27   #29
reco1123
Пользователь
 
Регистрация: 13.02.2015
Сообщений: 28
По умолчанию

А всетаки, не кто не знает какой компонент поставить чтобы можно было регулярками парсить?
reco1123 вне форума Ответить с цитированием
Старый 17.02.2015, 15:37   #30
Dmitry33RU
Пользователь
 
Регистрация: 09.10.2014
Сообщений: 62
По умолчанию

System.RegularExpressions
Dmitry33RU вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить текст друго сайта Pekky Фриланс 21 15.09.2014 04:34
Получить ссылки со страницы UKRtortik Общие вопросы Delphi 31 12.06.2014 15:45
Получить имя файла из ссылки(в конце ссылки нет имени файла) Человек_Борща Работа с сетью в Delphi 11 05.06.2011 15:15
Дан файл, содержащий текст, записанный строчными русскими буквами. Получить в др.файле тот же текст, develish151 Microsoft Office Word 4 05.05.2010 13:20
Получить ссылки из HTML-файла tsimokhin Общие вопросы Delphi 2 01.05.2009 09:57