Что нового
  • Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

VK API Спамим на странице

Tisso

Знающий кодер
Принятый Кодер
Регистрация
14 Июн 2015
Сообщения
1
Баллы
28
Возраст
18
спасибо за исходник
 

Olya

Homo habilis
Принятый Кодер
Регистрация
10 Май 2015
Сообщения
72
Баллы
60
Возраст
26
Нормальноcolega
 

dfkeybs

Знающий кодер
Принятый Кодер
Регистрация
21 Июн 2015
Сообщения
1
Баллы
28
Возраст
43
отличные уроки! молодец
 

Zizenko

Знающий кодер
Принятый Кодер
Регистрация
19 Авг 2015
Сообщения
3
Баллы
40
Возраст
18
Неплохо. Однако, получение токена - это не авторизация. Прав на публикацию сообщений не будет. Сделай нормальное видео, с авторизацией в ВК. Например такой код:
/// функция парсинга - начало
function Pars(T_, ForS, _T:string) :string;
var a, b:integer;
begin
Result :='';
if (T_='')or(ForS='')or(_T='') then Exit;
a:=Pos(T_, ForS);
if a=0 then Exit else a:=a+Length(T_);
ForS:=Copy(ForS, a, Length(ForS)-a+1);
b:=Pos(_T, ForS);
if b>0 then
Result:=Copy(ForS, 1, b - 1);
end;
// конец
var
// объявим переменные
http:thttpsend;
html:tstringlist;
data:tstringstream;
ip_h:string;
lg_h:string;
q_hash,hash:string;
vk_id:string;
// конец

begin
http:=thttpsend.Create; // создаём
html:=tstringlist.Create; // создаём
data:=tstringstream.Create; // создаём
// конец

http.UserAgent:='Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1'; // подключаем агент
http.KeepAlive:=true; // свободное подключение (принимаем данные)
if http.HTTPMethod('get','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

') then // переходим на vk.com и парсим ip_h и lg_h из исходного кода
begin
html.LoadFromStream(http.Document); // загружаем исходный код в html
Memo1.Lines.Add('['+TimeToStr(Time)+'] Авторизируемся в ВК...');
ip_h:=pars('name="ip_h" value="',utf8toansi(html.Text),'" />'); // парсим значение ip_h
lg_h;=pars('name="lg_h" value="',utf8toansi(html.Text),'" />'); // парсим значение lg_h
http.Headers.Clear; // чистим заголовки
http.Document.Clear; // чистим документ
// обязательно перед новым запросом нужно всё чистить ибо будет аншлаг-аншлаг
data.WriteString('act=login&_origin=https%3A%2F%2Fvk.com&ip_h='+ip_h+'&lg_h='+lg_h+'&email='+Edit1.Text+'&pass='+Edit2.Text); // генерируем пост запрос
http.MimeType:='application/x-www-form-urlencoded'; // заголовки
http.KeepAlive:=true; // свобода (принимаем данные)
http.UserAgent:='Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1'; // юзерагент ( мы не робот )
http.Document.LoadFromStream(data); // подгружаем наши данные в запрос (POST)
http.HTTPMethod('post','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

// отправляем пост запрос с данными
if pos('&__q_hash=',http.Headers.Text)<>0 then // если нашли q_hash в заголовках, тогда мы авторизовались ( почти )
begin // копируем hash
hash:=copy(http.Headers.Text,pos('hash=',http.Headers.Text),100)+';';
q_hash:=pars('hash=',hash,';');
// конец

http.Headers.Clear; // опять таки чистим все заголовки
http.Document.Clear; // clear document
http.HTTPMethod('get','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

// запрос, trim - удаляет пробелы
Memo1.Lines.Add('['+TimeToStr(Time)+'] Авторизация прошла успешно!');
http.Headers.Clear; // clear
http.Document.Clear; // clear
http.HTTPMethod('get','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.


html.LoadFromStream(http.Document); // загрузка документа
vk_id:=pars('id: ',utf8toansi(html.Text),','); // парсим ID в vk_id
Memo1.Lines.Add('['+TimeToStr(Time)+'] Получен ID аккаунта: '+vk_id); // вывод id
end else
begin Memo1.Lines.Add('['+TimeToStr(Time)+'] Не верный логин или пароль.'); // ну думаю ясно
end;

end else
begin
// если не попали на vk.com - ип в бане или хз что
Memo1.Lines.Add('['+TimeToStr(Time)+'] Вы забанены!');
end;
http.Free; // освобождаем память
data.Free; // освобождаем память
end;

end.
 
Последнее редактирование:

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,184
Баллы
155
Неплохо. Однако, получение токена - это не авторизация. Прав на публикацию сообщений не будет. Сделай нормальное видео, с авторизацией в ВК. Например такой код:
/// функция парсинга - начало
function Pars(T_, ForS, _T:string) :string;
var a, b:integer;
begin
Result :='';
if (T_='')or(ForS='')or(_T='') then Exit;
a:=Pos(T_, ForS);
if a=0 then Exit else a:=a+Length(T_);
ForS:=Copy(ForS, a, Length(ForS)-a+1);
b:=Pos(_T, ForS);
if b>0 then
Result:=Copy(ForS, 1, b - 1);
end;
// конец
var
// объявим переменные
http:thttpsend;
html:tstringlist;
data:tstringstream;
ip_h:string;
lg_h:string;
q_hash,hash:string;
vk_id:string;
// конец

begin
http:=thttpsend.Create; // создаём
html:=tstringlist.Create; // создаём
data:=tstringstream.Create; // создаём
// конец

http.UserAgent:='Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1'; // подключаем агент
http.KeepAlive:=true; // свободное подключение (принимаем данные)
if http.HTTPMethod('get','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

') then // переходим на vk.com и парсим ip_h и lg_h из исходного кода
begin
html.LoadFromStream(http.Document); // загружаем исходный код в html
Memo1.Lines.Add('['+TimeToStr(Time)+'] Авторизируемся в ВК...');
ip_h:=pars('name="ip_h" value="',utf8toansi(html.Text),'" />'); // парсим значение ip_h
lg_h;=pars('name="lg_h" value="',utf8toansi(html.Text),'" />'); // парсим значение lg_h
http.Headers.Clear; // чистим заголовки
http.Document.Clear; // чистим документ
// обязательно перед новым запросом нужно всё чистить ибо будет аншлаг-аншлаг
data.WriteString('act=login&_origin=https%3A%2F%2Fvk.com&ip_h='+ip_h+'&lg_h='+lg_h+'&email='+Edit1.Text+'&pass='+Edit2.Text); // генерируем пост запрос
http.MimeType:='application/x-www-form-urlencoded'; // заголовки
http.KeepAlive:=true; // свобода (принимаем данные)
http.UserAgent:='Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1'; // юзерагент ( мы не робот )
http.Document.LoadFromStream(data); // подгружаем наши данные в запрос (POST)
http.HTTPMethod('post','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

// отправляем пост запрос с данными
if pos('&__q_hash=',http.Headers.Text)<>0 then // если нашли q_hash в заголовках, тогда мы авторизовались ( почти )
begin // копируем hash
hash:=copy(http.Headers.Text,pos('hash=',http.Headers.Text),100)+';';
q_hash:=pars('hash=',hash,';');
// конец

http.Headers.Clear; // опять таки чистим все заголовки
http.Document.Clear; // clear document
http.HTTPMethod('get','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

// запрос, trim - удаляет пробелы
Memo1.Lines.Add('['+TimeToStr(Time)+'] Авторизация прошла успешно!');
http.Headers.Clear; // clear
http.Document.Clear; // clear
http.HTTPMethod('get','

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.


html.LoadFromStream(http.Document); // загрузка документа
vk_id:=pars('id: ',utf8toansi(html.Text),','); // парсим ID в vk_id
Memo1.Lines.Add('['+TimeToStr(Time)+'] Получен ID аккаунта: '+vk_id); // вывод id
end else
begin Memo1.Lines.Add('['+TimeToStr(Time)+'] Не верный логин или пароль.'); // ну думаю ясно
end;

end else
begin
// если не попали на vk.com - ип в бане или хз что
Memo1.Lines.Add('['+TimeToStr(Time)+'] Вы забанены!');
end;
http.Free; // освобождаем память
data.Free; // освобождаем память
end;

end.
Ну как видешь разницу, я сделал через api запросы,а ты через отловленые снифером запросы.
 

marseldemon

Registred
Новичок
Регистрация
2 Ноя 2015
Сообщения
2
Баллы
18
Возраст
31
аааа проблема как прикрепить к сообщению файл картинку....? апи юзал не понимаю часть как файл вложить какие параметры писать
 

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,184
Баллы
155
аааа проблема как прикрепить к сообщению файл картинку....? апи юзал не понимаю часть как файл вложить какие параметры писать
Перед тем как делать запрос,нужно авторизация !

С помощью метода

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

приложение узнает http-адрес для загрузки фотографии на стену текущего пользователя, другого пользователя или группы в зависимости от переданных параметров user_id или group_id.

2. Приложение формирует POST-запрос на полученный адрес.
Запрос должен включать поле photo, содержащее файл с изображением (JPG, PNG, BMP или GIF)

Пример результата загрузки фотографии:

{"server": "1234", "photo": "1234", "hash": "12345abcde"}


Обратите внимание, что ответ сервера всегда приходит в формате JSON, а поля server, photo и hash в нем содержат строки, внутренний формат которых может изменяться со временем. В частности, строка photoможет содержать другой json-объект, который не следует декодировать, разбирать на части или иным образом модифицировать.

3. С помощью метода

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

приложение передает серверу полученные данные (server, photo, hash и опциональные user_id и group_id) и получает данные о загруженной фотографии. Обратите внимание, за один вызов photos.saveWallPhoto не может быть загружено более 6 фотографий.

После успешной загрузки фотографии Вы можете разместить её на стене, используя метод

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

и указав идентификатор фотографии в параметре attachments. Обратите внимание, что при размещении фотографии на стене другого пользователя или группы необходимо указывать параметры user_id и group_id, соответствующие используемым в п.1.
 

marseldemon

Registred
Новичок
Регистрация
2 Ноя 2015
Сообщения
2
Баллы
18
Возраст
31
{"server": "1234", "photo": "1234", "hash": "12345abcde"}
.
Проблема в том что не приходит такой ответ сервера точнее приходит но не от того URL куда заливаешь файл = то есть приходит 2 пост ответа. программа ловит только 1. не нужный.
 

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,184
Баллы
155
Проблема в том что не приходит такой ответ сервера точнее приходит но не от того URL куда заливаешь файл = то есть приходит 2 пост ответа. программа ловит только 1. не нужный.
попробуйте посмотреть снифером где вы ошиблись.
 
Вверх