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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2012, 22:46   #11
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от Кольша Посмотреть сообщение
Код:
procedure TForm1.sButton1Click(Sender: TObject);  
var  
rev, url:string;  
head: array[1..100] of string;  
begin  
rev:=send('GET', Form1.sEdit1.Text,'','','','application/x-www-form-urlencoded;','','','','','',head);  
while sMemo1.Lines.Count-1 < 10 do  
begin///стер случайно попробуйте сейчас
url:=pars('<h2><a href="', '">',rev); 
if pos('send',url)=0 then///типичная проверка
sMemo1.Lines.Add(url);  
delete(rev,1,pos('<h2><a href="',rev)+length('<h2><a href="')); 
end;  
end;
Все супер, спасибо Вам огромное!
FleXik вне форума Ответить с цитированием
Старый 01.11.2012, 22:48   #12
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Обращайтесь!
Кольша вне форума Ответить с цитированием
Старый 02.11.2012, 03:10   #13
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Очередная проблемка

Код страницы сайта:
Код:
				<li><a class="main" title="Главная" href="/">Главная</a></li>
				<li><a class="add" title="Добавить" href="/add">Добавить<     a><li>								
				<li><a href="/all">Бездна</a></li>
				<li><a href="/best">Лучшие</a></li>				
				<li><a href="/random">Случайный</a></li>
				<li><a href="/tags">Категории</a></li>
				<li><a href="/rating">Авторы</a></li>	
				<div class="rmenu">
					<li><a class="empty"></a></li>
					<li><a href="/faq">FAQ</a></li>
					<li><a href="/templates">Шаблоны</a></li>				
					<li><a href="/wall">Стена</a></li>
       </a></li>
								</ul>
							</div>

							<div class="right">
								<ul class="socials">	
									<li><a href="http://comicsbook.ru/funny/74297?vertyat-

           nami-kak-hotyat" title="Ссылка на пост">ссылка</a></li>									
									<li><a href="#"
PHP код:
var
revurltemp:string;
head: array[1..100of string;

begin
if Form1.sListBox1.ItemIndex 2 then
try
Form1.sMemo1.Clear;
rev:=send('GET''http://comicsbook.ru/','','','','application/x-www-form-urlencoded;','','','','','',head);
while 
Form1.sMemo1.Lines.Count-20 do
begin
temp
:=parser(rev,'<div class="right">''"#"',0,0);
url:=parser(temp,'<a href="''?',0,0);
Form1.sMemo1.Lines.Add(url);
Delete(rev,1,Pos('<a href="',rev)+length('<a href="'));
Form1.Label1.Caption:= 'Ссылок: ' Inttostr(Form1.sMemo1.Lines.Count-0);
end
except
end
;
end
Парсит одну и ту же ссылку... Просто тегов <li><a href=" много и перед ссылками которые мне надо, пришлось указывать код между которым и будет парсится ссылка, но парсит одну и ту же ссылку, бывает парсится вообще меню сайта, из за того что теги перед ссылками такие же как в меню... Как быть, помогите пожалуйста, спасибо.

Последний раз редактировалось FleXik; 02.11.2012 в 06:28.
FleXik вне форума Ответить с цитированием
Старый 02.11.2012, 10:35   #14
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Помогите пожалуйста
FleXik вне форума Ответить с цитированием
Старый 02.11.2012, 11:56   #15
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Код:
var 
rev, url, temp:string; 
head: array[1..100] of string; 

begin 
if Form1.sListBox1.ItemIndex = 2 then 
try 
Form1.sMemo1.Clear; 
rev:=send('GET', 'http://comicsbook.ru/','','','','application/x-www-form-urlencoded;','','','','','',head); 
while Form1.sMemo1.Lines.Count-0 < 7 do 
begin 
temp:=parser(rev,'<div class="right">', '" title="Ссылка на пост">ссылка</a>',0,0); 
url:=parser(temp,'<a href="', '?',0,0); 
Form1.sMemo1.Lines.Add(url); 
Delete(rev,1,Pos(temp,rev)+length(temp)); 
Form1.Label1.Caption:= 'Ссылок: ' + Inttostr(Form1.sMemo1.Lines.Count); 
end 
except 
end; 
end;
Как то так
Кольша вне форума Ответить с цитированием
Старый 02.11.2012, 20:52   #16
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от Кольша Посмотреть сообщение
Код:
var 
rev, url, temp:string; 
head: array[1..100] of string; 

begin 
if Form1.sListBox1.ItemIndex = 2 then 
try 
Form1.sMemo1.Clear; 
rev:=send('GET', 'http://comicsbook.ru/','','','','application/x-www-form-urlencoded;','','','','','',head); 
while Form1.sMemo1.Lines.Count-0 < 7 do 
begin 
temp:=parser(rev,'<div class="right">', '" title="Ссылка на пост">ссылка</a>',0,0); 
url:=parser(temp,'<a href="', '?',0,0); 
Form1.sMemo1.Lines.Add(url); 
Delete(rev,1,Pos(temp,rev)+length(temp)); 
Form1.Label1.Caption:= 'Ссылок: ' + Inttostr(Form1.sMemo1.Lines.Count); 
end 
except 
end; 
end;
Как то так
Извиняюсь, все работает, просто не увидел +length(temp)); а у меня стояло rev, спасибо большое снова!! но надо было парсить до сюда "#" спасибо огромное за помощь!

Последний раз редактировалось FleXik; 02.11.2012 в 21:05.
FleXik вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с парсингом Pein95 Общие вопросы Delphi 3 23.11.2011 06:08
Криво парсится текст INSectoID Общие вопросы Delphi 5 14.07.2011 20:55
проблема с парсингом Pein95 Общие вопросы Delphi 5 14.07.2011 20:11
Одна внешняя ссылка для большой формулы almik Microsoft Office Excel 8 11.04.2011 14:48