Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Парсинг

-

Вопросы и ответы, обсуждения

- Ваши вопросы по Pascal/Delphi только в данном разделе

Ответ
 
Опции темы
Старый 21.06.2012, 11:06   #1
Заблокирован
 Пехотинец
Аватар для Skrillex3
 
Skrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компании
Регистрация: 23.03.2012
Сообщений: 83
Популярность: 908
Сказал(а) спасибо: 102
Поблагодарили 144 раз(а) в 61 сообщениях
Отправить сообщение для Skrillex3 с помощью Skype™
 
По умолчанию Парсинг

Есть некий сайт на котором есть разделы ,в разделах есть по несколько страниц , мне нужно вытаскивать последнню страницу раздела , пример кода на сайте
Цитата:
<a href='?p=2'>2</a><a href='?p=3'>3</a><a href='?p=4'>4</a><a href='?p=5'>5</a><a href='?p=6'>6</a><a href='?p=7'>7</a><a href='?p=8'>8</a><a href='?p=9'>9</a><a href='?p=10'>10</a>&nbsp;...&nbsp;&nbsp;<a href="?p=33">33</a></div>

и ещё вариант
Цитата:
<a href='?p=2'>2</a><a href='?p=3'>3</a><a href='?p=4'>4</a><a href='?p=5'>5</a><a href='?p=6'>6</a></div>

А вот мой код
Цитата:
function GetCount(source: string): string;
var caz:tstringlist;
begin
try
result:='0';
caz:=tstringlist.Create;
result := pars('Сортировать по',S,'function showClubPrice(id, showAlert');
Reg.Expression := 'href="(.*?)</a>';
if Reg.Exec(result) then
repeat
Caz.add(reg.Match[1]);
until not Reg.ExecNext else add('Не вышло спарсить кол-во страниц!');
result := pars('?p=' , caz.Text,'">');
add(result);
except
Add('Проблемы с соединением или критическая ошибка!');
end;
Caz.Free;
end;

Проблема заключается в том что очень часто процедура вытягивает какой нибудь текст ,а не число.
  Ответить с цитированием
Старый 22.06.2012, 11:34   #2
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Парсинг

Код:
function Pars(s:string):string;
var
s1:string;
begin
s1:=Copy(s,Pos('?p=',s)+6,Pos('</a></div>',s)-Pos('?p=',s)-6);
s1:=Copy(s1,Length(s1)-5,6);
s1:=Copy(s1,Pos('>',s1)+1,Length(s1)-Pos('>',s1));
result:=s1;
end;
Юзать так:
Код:
{тут переменная, куда парсим}:=Pars({тут исходный код страницы});
P.S. Функшн пишется за 2 минуты, если знать основы
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Старый 22.06.2012, 22:42   #3
Заблокирован
 Пехотинец
Аватар для Skrillex3
 
Skrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компании
Регистрация: 23.03.2012
Сообщений: 83
Популярность: 908
Сказал(а) спасибо: 102
Поблагодарили 144 раз(а) в 61 сообщениях
Отправить сообщение для Skrillex3 с помощью Skype™
 
По умолчанию Re: Парсинг

основы я знаю , практики мало , код твой парсит чтото вообще из другой части страници , спс канечно за помощь , буду разбераться
  Ответить с цитированием
Старый 22.06.2012, 22:58   #4
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Парсинг

Цитата:
Сообщение от Skrillex3Посмотреть сообщение
код твой парсит чтото вообще из другой части страници , спс канечно за помощь







Я написал функцию парса по тому, что было в теме. Откуда я должен был знать, что в неё ты всунешь весь исходный код? Где это написано в теме?
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Старый 22.06.2012, 23:09   #5
Заблокирован
 Пехотинец
Аватар для Skrillex3
 
Skrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компании
Регистрация: 23.03.2012
Сообщений: 83
Популярность: 908
Сказал(а) спасибо: 102
Поблагодарили 144 раз(а) в 61 сообщениях
Отправить сообщение для Skrillex3 с помощью Skype™
 
По умолчанию Re: Парсинг

Я думал той части кода хватит , тут полный код [Ссылки могут видеть только зарегистрированные пользователи. ]
  Ответить с цитированием
Старый 22.06.2012, 23:32   #6
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Парсинг

Я думал, что этого "мануала" по Copy, Pos, Delete хватит даже для умственно отсталых людей, но я ошибался.

Я тебе дал функшн парса. Тебе осталось выцепить из исходного кода что-то похожее на пример, который ты указал в теме, и всунуть в мой функшн. Сверху ссылка на пост-мануал, на плечах должны быть руки, в черепной коробке желательно иметь мозг, в мозге поищи немного фантазии и аналитических способностей. Дерзай.
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] парсинг *Хalyava* Вопросы и ответы, обсуждения 4 29.03.2012 21:02
[Помогите!] Парсинг Буянь Вопросы и ответы, обсуждения 1 20.03.2012 04:50
Парсинг из XML OneShot Вопросы и ответы, обсуждения 13 08.12.2011 15:30
Парсинг OrBiT_DaRk С/С++ 1 20.09.2011 19:14
Парсинг. WiLLi-WindowS С/С++ 1 01.06.2011 18:07

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 21:37.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net