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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2012, 19:50   #1
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию опять парсинг

нужно отпарсить страницы такого типа: http://demotivators.ru/?page=2
вот часть хтмл кода:
Код:

<td>
<div id="p978196" class="posterimage">

<a href="/posters/595637/vse-prosto.htm"><img src="/media/posters/3348/54595637_vse-prosto.thumbnail.jpg" alt="ВСЕ ПРОСТО"/></a>

</div>
<div class="postfooter">

    <a href="/posters/595637/vse-prosto.htm#comments">Комментарии: 405</a>


</div>
</td>

<td>
<div id="p978071" class="posterimage">

<a href="/posters/578839/durya-bashka.htm"><img src="/media/posters/3223/64578839_durya-bashka.thumbnail.jpg" alt="Дурья башка"/></a>

</div>
нужно отпарсить такие ссылки:
/posters/578839/durya-bashka.htm

вот мой код:
Код:

procedure TForm1.Button1Click(Sender: TObject);
var
i,j,n,bg,en:integer;
res,s,text,rest:string;
begin
text:=memo1.Lines.Text;



while memo2.Lines.Count-1<12 do
begin
  bg:=pos('href="/posters/',text);

  en:=pos('.htm"><img',text);
  res:=copy(text,bg+6,en-bg-2);
  memo2.Lines.Add(res);
  delete(text,1,en+10);
end;




end;
но он не работает... в чем проблема?
Pein95 вне форума Ответить с цитированием
Старый 03.02.2012, 02:21   #2
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию

народ плз) помогите)
Pein95 вне форума Ответить с цитированием
Старый 03.02.2012, 02:31   #3
Delphi_ProGer
Форумчанин
 
Регистрация: 30.10.2010
Сообщений: 524
По умолчанию

http://programmersforum.ru/showpost....90&postcount=3

а потом сюда:
http://programmersforum.ru/showpost....91&postcount=6
Delphi_ProGer вне форума Ответить с цитированием
Старый 03.02.2012, 02:46   #4
Step_UA
Форумчанин
 
Аватар для Step_UA
 
Регистрация: 09.06.2011
Сообщений: 388
По умолчанию

Если не ошибаюсь, то после удаления из text найденной ссылки и поиске начала следующей по строке 'href="/posters/' - наткнешься на начало ссылки для коментов, ее нужно также удалить
Код:
delete(text,1,pos('href="/posters/',text)+15);
на неконкретные вопросы даю неконкретные ответы ...
Step_UA вне форума Ответить с цитированием
Старый 03.02.2012, 21:11   #5
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию

Теперь парсит, но не все ссылки.. не пойму в чем проблема.. Вот скинул сам проект и html файл который нужно парсить. Тут находит только 7 ссылок из 12(
Вложения
Тип файла: rar pars_prog.rar (11.2 Кб, 9 просмотров)
Pein95 вне форума Ответить с цитированием
Старый 03.02.2012, 21:36   #6
Step_UA
Форумчанин
 
Аватар для Step_UA
 
Регистрация: 09.06.2011
Сообщений: 388
По умолчанию

проверил на вашем примере, сформированно 12 ссылок:
Код:
while memo2.Lines.Count<12 do
begin
  bg:=pos('href="/posters/',text);
  en:=pos('.htm"><img',text);
  res:=copy(text,bg+6,en-bg-2);
  memo2.Lines.Add(res);
  delete(text,1,en+10);
  delete(text,1,pos('href="/posters/',text)+15);
end;
на неконкретные вопросы даю неконкретные ответы ...
Step_UA вне форума Ответить с цитированием
Старый 03.02.2012, 22:44   #7
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию

нет, все работает ет я ошибся) одну строчку закоментил)
все осталось скачать) спс за помощь)
Pein95 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
парсинг Pein95 Работа с сетью в Delphi 4 01.12.2011 02:06
опять я опять мемо nyasha2013 Помощь студентам 2 19.05.2011 21:09
И опять мэйлы.. Опять... Pusher PHP 6 28.06.2008 03:08