Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.09.2010, 16:40
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию Парсинг с ВК

http://vkontakte.ru/login.php?email=...ароль&expire=0

нужен парсинг сообщений со стены

вот к примеру код

Код:
<div class="header">
       <a class="memLink" href="/id36154711">Максим Покусаев</a> написал<br />
       <small>вчера в 23:25</small>
      </div>
      <div class="text" id="wPost7711046_1012">оо,ава просто оБжигает)))</div>
      <div class="actions">
       <small><a href="/wall.php?id=7711046&person=36154711"><span>Тет-а-тет</span></a><span class="divider">|</span><a href="/wall.php?act=write&id=361547116437">Написать на его стене</a><span class="divider">|</span><a href="javascript: reportSpamPost(1012, 7711046)">Это спам</a></small>
      </div>
      <div class="replies"></div>
Ответить с цитированием
  #2  
Старый 22.09.2010, 16:52
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

я думаю может сделать поиск по исходному коду регулярным выржением, один вопрос как
Ответить с цитированием
  #3  
Старый 22.09.2010, 17:07
lega4 lega4 вне форума
Прохожий
 
Регистрация: 14.09.2010
Сообщения: 15
Репутация: 10
По умолчанию

Получаешь страничку и работаешь со строчкой. Что-нить типа
Код:
q:=pos('<div class="text" id="wPost',source)+27;
while source[q]<>'<' do begin
itog:=itog+source[q];
inc(q);
end;
Ну или, если "<" может встретится в тексте, то удали все до поста и копируй до позиции "</div>".
Ответить с цитированием
  #4  
Старый 22.09.2010, 17:37
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

Код:
q:=pos('<a class="memLink" href=',source)+27;
while source[q]<>'<' do begin
itog:=itog+source[q];
inc(q);
end;

и до <div class="actions"> надо

а как получить страницу
Ответить с цитированием
  #5  
Старый 22.09.2010, 17:44
lega4 lega4 вне форума
Прохожий
 
Регистрация: 14.09.2010
Сообщения: 15
Репутация: 10
По умолчанию

Получить - легко и просто, в соседней теме уже писали
Код:
var
html:TStringList;
begin
html:=TStringList.Create;
html.text:=idhttp.get('http://ссылка');

А какая разница, если код
Цитата:
<div class="text" id="wPostNumber-Number">текст-текст-текст</div><div class="actions">
? Текст то конечается уже на </div>
Ответить с цитированием
  #6  
Старый 22.09.2010, 17:59
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

объедени плиз код страницы со второй частью выдирания текста
Ответить с цитированием
  #7  
Старый 22.09.2010, 19:04
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

Код:
var
html:TStringList;
begin
html:=TStringList.Create;
html.text:=idhttp.get('http://vkontakte.ru/login.php?email=ваш_майл&pass=ваш_пароль&expire=0');
q:=pos('<a class="memLink" href=',source)+27;
while source[q]<>'<div class="actions">' do begin
itog:=itog+source[q];
inc(q);
end;
Admin: Напоминаю про оформленте кода. При рецедиве бан.

вот так я думаю

Последний раз редактировалось Admin, 22.09.2010 в 20:56.
Ответить с цитированием
  #8  
Старый 22.09.2010, 19:05
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

только вот мы вырезали текст как его теперь
result:=Pchar(' СЮДА ВСТАВИТЬ');
Ответить с цитированием
  #9  
Старый 22.09.2010, 19:16
Аватар для Bars1992
Bars1992 Bars1992 вне форума
Активный
 
Регистрация: 24.04.2010
Адрес: Украина, Кременчуг
Сообщения: 249
Репутация: 22
По умолчанию

Цитата:
Сообщение от Adrenalin666
только вот мы вырезали текст как его теперь
result:=Pchar(' СЮДА ВСТАВИТЬ');

Делай с помощю рег выражений
Вот то что как раз для твоего случая: <div class="text" id=".+?">(.+?)<\/div>
__________________
Не твори зла, и жизнь повернется к тебе передом
Ответить с цитированием
  #10  
Старый 22.09.2010, 19:25
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

я и спрашиваю как рег выражением
preg_match("<a class="memLink" href=(.+?)<div class="actions">",$income_str,$out_arr);
вот мы ищем а за что отвечает я понятия не имею $income_str,$out_arr

Последний раз редактировалось Adrenalin666, 22.09.2010 в 19:54.
Ответить с цитированием
  #11  
Старый 22.09.2010, 20:31
Аватар для Bars1992
Bars1992 Bars1992 вне форума
Активный
 
Регистрация: 24.04.2010
Адрес: Украина, Кременчуг
Сообщения: 249
Репутация: 22
По умолчанию

Цитата:
Сообщение от Adrenalin666
я и спрашиваю как рег выражением
preg_match("<a class="memLink" href=(.+?)<div class="actions">",$income_str,$out_arr);
вот мы ищем а за что отвечает я понятия не имею $income_str,$out_arr


$income_str можна догодатся что это income string то есть входная строка
$out_arr- out array то есть выходной масив.

И чиму вас в школе учат(учили)
__________________
Не твори зла, и жизнь повернется к тебе передом
Ответить с цитированием
  #12  
Старый 22.09.2010, 20:55
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

честно говоря 9 класс Турбо паскаль только начинают и то функции арифметические, так что от школы ждать нечего
Ответить с цитированием
  #13  
Старый 22.09.2010, 20:57
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

Код:
var
html:TStringList;
begin
html:=TStringList.Create;
html.text:=idhttp.get('http://vkontakte.ru/login.php?email=ваш_майл&pass=ваш_пароль&expire=0' );//взяли исходный код

preg_match("<a class="memLink" href=(.+?)<div class="actions">",$income_str,$out_arr);//нашли текст
а дальше как
Ответить с цитированием
  #14  
Старый 22.09.2010, 21:25
Adrenalin666 Adrenalin666 вне форума
Новичок
 
Регистрация: 21.09.2010
Сообщения: 94
Репутация: 16
По умолчанию

.
.
.
.
.
.
.
.

Последний раз редактировалось Adrenalin666, 22.09.2010 в 21:51.
Ответить с цитированием
  #15  
Старый 22.09.2010, 22:19
Аватар для Bars1992
Bars1992 Bars1992 вне форума
Активный
 
Регистрация: 24.04.2010
Адрес: Украина, Кременчуг
Сообщения: 249
Репутация: 22
По умолчанию

Цитата:
Сообщение от Adrenalin666
честно говоря 9 класс Турбо паскаль только начинают и то функции арифметические, так что от школы ждать нечего

Я имел введу английский.

Я не пойму что за процедуру ты используешь. Почитай эту статью. Там всё, и примеры и пояснения.
__________________
Не твори зла, и жизнь повернется к тебе передом
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter