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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 08.02.2014, 11:40   #21
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

maloun, так вы спарсите числа которые я выделил красным а не все сразу, все сразу я могу и сам спарсить, вот только мне не это нужно...


maloun, то что вы мне скинули аналогично этому:

Код:
begin
var
s, s2:string;
sl:TStringList;
i:integer;
begin
sl:=TStringList.Create;
sl.Loadfromfile('1.txt');
for i:=0 to sl.Count-1 do
begin
s:=parser(sl[i], '"page=', '"', 0,0);
s2:=parser(sl[i], '">', '</', 0,0);
Form1.Memo1.Lines.Add(s + ', ' + s2);
end;
sl.Free;
end;
но если мне было бы нужное именно это - тему я бы не создавал, т.к спарсить все я и сам могу...

Последний раз редактировалось FleXik; 08.02.2014 в 11:46.
FleXik вне форума
Старый 08.02.2014, 11:43   #22
maloun
Форумчанин
 
Аватар для maloun
 
Регистрация: 03.01.2011
Сообщений: 233
По умолчанию

тогда вы хотите понять логику сайта который выдает вам количество страниц

вот простой способ
отправляете запрос на страницу,
получили страницу?
да - > парсим её, просим следующую
нет - > перестаем просить
пыжок

Последний раз редактировалось maloun; 08.02.2014 в 11:52.
maloun вне форума
Старый 08.02.2014, 11:52   #23
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от maloun Посмотреть сообщение
тогда вы хотите понять логику сайта который выдает вам количество страниц
ну так а мне нужны только числа выделенные красным чтобы парсились а не любые... на самом деле у вас такой-же парсер "всех чисел" как и у меня код которого я давал в предыдущем сообщении, но мне нужно чтобы парсились только числа выделенные красным и всё.
FleXik вне форума
Старый 08.02.2014, 11:55   #24
maloun
Форумчанин
 
Аватар для maloun
 
Регистрация: 03.01.2011
Сообщений: 233
По умолчанию

что значит числа выделенные красным, я получил массив индексов, дальше сами решайте какие из них вам нужны, можно и по мере получения индексов проверять "красные" они или нет
пыжок
maloun вне форума
Старый 08.02.2014, 11:58   #25
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от maloun Посмотреть сообщение
тогда вы хотите понять логику сайта который выдает вам количество страниц

вот простой способ
отправляете запрос на страницу,
получили страницу?
да - > парсим её, просим следующую
нет - > перестаем просить
в принципе да, и в конце можно делать проверку если следующий страницы нет то останавливаем софт но это намного геморнее как по мне чем просто спарсить число сколько в общем количестве страниц и сделать цикл

на самом деле вы меня не правильно поняли, вы предлагаете мне спарсить ссылку на следующую страницу в исходном коде предыдущей страницы (так в принципе тоже можно) а мне надо парсить количество ссылок но это не обычные ссылки а просто цифра сколько страниц в общем сущействует по отправленному запросу
FleXik вне форума
Старый 08.02.2014, 12:03   #26
maloun
Форумчанин
 
Аватар для maloun
 
Регистрация: 03.01.2011
Сообщений: 233
По умолчанию

в таком случае могу только пожелать вам разобраться с тем как получить от сервера правильное количество страниц
пыжок
maloun вне форума
Старый 08.02.2014, 12:06   #27
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от maloun Посмотреть сообщение
в таком случае могу только пожелать вам разобраться с тем как получить от сервера правильное количество страниц
стоп, прошу прощения, оказывается я не досмотрел и оказалось что показываются общее количество не более 10 страниц, т.е получается что нужно делать так:

1. отправляем запрос
2. парсим данные и ссылку на следующую страницу

и так по кругу, но как узнать какая страничка последняя и прекратить работу? в принципе можно проверки сделать но если исходный код последней страницы разрешает...
FleXik вне форума
Старый 08.02.2014, 12:14   #28
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

Посмотри мой код. Может это и есть что ты ищешь. Я не особо внимательно прочитал всю тему, но кажется уловил суть.
Вложения
Тип файла: rar Новая папка (2).rar (165.0 Кб, 9 просмотров)
doktor255 вне форума
Старый 08.02.2014, 12:34   #29
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

doktor255, все правильно но планы поменялись т.к я заметил что в общем количестве показывает не более 10 страниц и нужно делать так

1. Отправляем запрос
2. Парсим данные и парсим ссылку на следующую страницу
3. Переходим на следующую страницу

и так по кругу, вот только есть ли в коде последней страницы отличия перед другими страницами - какраз проверяю, т.к если есть отличия можно будет делать проверку if Pos и если не находим - останавливаем софт и опять же может кто-то предложит реализацию?

Парсить в принципе можно сразу несколько ссылок на 9 первых страниц, записывать в массив и переходить по них по-очереди и с последней (девятой) страницы парсить ссылки на следующие 9 страниц и так по кругу пока страницы не кончатся

так как способ лучше? Парсить сразу все 9 ссылок или парсить по-одной? или есть какие предложения? с кодом справлюсь сам разве что спрошу если не смогу спарсить ссылку на следующую страницу т.к там части кода одинаковые и сделать это достаточно сложно...
FleXik вне форума
Старый 08.02.2014, 12:41   #30
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

Будет гораздо проще решить задачу, если я гляну содержимое этих страниц.
P.S. Кстати как один из методов, просто ищи на каждой последующей странице выражение <a href="page= <индекс цикла + 1>">. И ни какие массивы заводить не требуется.

Последний раз редактировалось doktor255; 08.02.2014 в 12:46.
doktor255 вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вобщем...защитился :) spamer Свободное общение 48 21.06.2013 01:39
И опять у меня проблема... Alex009 Общие вопросы C/C++ 17 10.03.2013 14:32
И опять проблема с хуками. Приложение само закрывается Altera Win Api 10 16.03.2010 19:39
Это опять я, проблема вывода график на рисунок. Bilargo Помощь студентам 14 27.10.2009 11:18