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

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

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

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

Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Сообщения
1,151
Симпатии
222
Баллы
155
VK
Для просмотра содержимого вам необходимо авторизоваться.
 
Последнее редактирование:
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Сообщения
1,151
Симпатии
222
Баллы
155
VK
Если кому надо, могу сделать урок как писать на русском и с пробелом
 
Z Оффлайн

Zizenko

Знающий кодер
Принятый Кодер
Сообщения
3
Симпатии
1
Баллы
40
Неплохо. Однако, получение токена - это не авторизация. Прав на публикацию сообщений не будет. Сделай нормальное видео, с авторизацией в ВК. Например такой код:
/// функция парсинга - начало
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 Оффлайн

Lomanu4

Команда форума
Администратор
Сообщения
1,151
Симпатии
222
Баллы
155
VK
Неплохо. Однако, получение токена - это не авторизация. Прав на публикацию сообщений не будет. Сделай нормальное видео, с авторизацией в ВК. Например такой код:
/// функция парсинга - начало
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 Оффлайн

marseldemon

Registred
Новичок
Сообщения
2
Симпатии
0
Баллы
18
аааа проблема как прикрепить к сообщению файл картинку....? апи юзал не понимаю часть как файл вложить какие параметры писать
 
Lomanu4 Оффлайн

Lomanu4

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

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

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

приложение узнает 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 Оффлайн

marseldemon

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

Lomanu4

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