Автор Тема: Обращение к API ВКонтакте  (Прочитано 53132 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Обращение к API ВКонтакте
« Создано: Октябрь 08, 2012, 14:16:25 »

AutoIt: 3.3.14.2
Версия: 1.4.1.1 (beta)/(1.4-b1)
Windows:
   7, 8, 8.1, 10
Категория: Разное

Описание: Обращение к API ВКонтакте при помощи AutoIt. Получение данных через API на основе "Документации ВКонтакте" в формате JSON.

Автор(ы):
   ---Zak---

ВНИМАНИЕ !!!

Данный метод использует скрытую авторизацию, а так же скрытое подтверждение разрешение на добавление приложения.
Распространяется "как есть", автор не несет за собой никаких последствий, ответственности, обязательств или иного рода влияния причин связанных с работой ПК и/или влияния на функционал работы сайта vk.com с использованием данного кода. Использовать на свой страх и риск.

ПОДРОБНЕЕ:
  • Данный пример взаимодействует с методами API ВКонтакте и на основе полученных данных обрабатывает информацию.
  • Не требуется открытия какого-либо браузера - запросы к API ВКонтакте отправляются через службу WinHttp.
  • Скрипт позволяет получить данные API не указывая никаких данных для обработки, т.к. все данные будут обработаны автоматически и получены в виде 2D массива.
  • По-умолчанию ID standalone-клиента (необходим для работы с API) = 2987875. Вы можете создать собственный standalone-клиент и при авторизации указать другой ID (см. документацию API ВКонтакте), а так же заменить ID клиента по-умолчанию: см. функцию _vAPI_OAuth2 - переменная $VKAPI_ID

АКТУАЛЬНАЯ ВЕРСИЯ: 1.4.1.1 (1.4-b1)
  • В данный момент осуществляется привязка к версии API ВКонтакте (5.53) из-за отсутствия корректного получения актуальной версии.
  • С вводом режима 'offline' на уровне "Права доступа для токена пользователя" отсутствует необходимость вести разработку в сторону получения и обработки 'Cookie' после авторизации пользователя. К сожалению, данный метод еще не реализован.
  • В некоторых случаях функция __JSONDecode работает не корректно... Временно стоят 'легкие заглушки'.

ОСНОВНЫЕ ФУНКЦИИ:
Код: AutoIt [Выделить]
;~ ===============================================================================
;~    _vAPI_OAuth2 - первоначальная авторизации пользователя
;~    _vAPI_GETMethod - выполнение запросов к API ВКонтакте
;~    _vAPI_TOKENParse - получение access_token
;~    _vAPI_SCOPE - разрешение прав доступа
;~
;~    _ARRS - возвращение позиции столбца в 2D массиве по первичному элементу
;~    _WinHTTP_FileUpload - функция используется для загрузки изображений
;~
;~    _vGUI_CAPTCHA - вывод GUI с требованием ввода кода с картинки (Captcha).
;~    _vGUI_AUTHCODE - вывод GUI ввода данных для двухэтапной аутентификации
;~
;~    __JSONDecode - декодирование JSON ответа API и реализации 2D массива
;~ ===============================================================================



ИНСТРУКЦИЯ (1.4-b1):
(нажмите для показа/скрытия)

ПРИМЕР (1.4-b1):
(нажмите для показа/скрытия)

СКРИНШОТЫ:
(нажмите для показа/скрытия)
   
ИСХОДНИКИ:

   
ИСТОРИЯ ВЕРСИЙ:
(нажмите для показа/скрытия)

ПРИМЕЧАНИЕ:
01-09-2016 | Прекращена поддержка скрипта работающего под ОС Windows XP из-за отсутствия возможности тестирования, но это не означает, что скрипт не будет работать в данной ОС.

О СКРИПТЕ:
Вы можете вносить изменения и доработки в скрипт, а так же на основе данного кода составлять полноценные программы и т.п.

ИСТОЧНИК:
   Google
   Autoit-script.ru
   ВКонтакте - Разработка приложений
« Последнее редактирование: Сентябрь 07, 2016, 13:47:19 от ---Zak--- »
OS: WinXp SP3 (RUS), Win7 (x86/x64)


My development:
http://autoit-script.ru/index.php/topic,11541.0.html

Русское сообщество AutoIt

Обращение к API ВКонтакте
« Отправлен: Октябрь 08, 2012, 14:16:25 »

Оффлайн Medic84 [?]

  • Администратор
  • *
  • Сообщений: 1416
  • Репутация: 303
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #1, Отправлен: Октябрь 08, 2012, 15:28:03 »
Ну собственно мы и искали такое решение. Почему у нас в теме не отписался? В GitHub бы добавил...

   
На форуме принято отмечать полезные сообщения пальцем вверх =)
Никогда не даю подробных примеров сразу, я сначала навожу на мысль - как можно написать. Учитесь мыслить сами, а не за других людей.

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438

  • Автор темы
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #2, Отправлен: Октябрь 08, 2012, 15:30:16 »
2 Medic84: признаюсь - поиском не пользовался ;) Возможно просто отбросил все мысли и решил взять дело в собственные руки.
Если надо именно от меня надпись - ссылочку в студию))))

Оффлайн Medic84 [?]

  • Администратор
  • *
  • Сообщений: 1416
  • Репутация: 303
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #3, Отправлен: Октябрь 08, 2012, 15:47:24 »
http://autoit-script.ru/index.php/topic,7517.0.html
Ну мы занимаемся вот этим.

Русское сообщество AutoIt

Re: Обращение к API (vk.com) через WinHttp
« Ответ #3 Отправлен: Октябрь 08, 2012, 15:47:24 »

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438

  • Автор темы
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #4, Отправлен: Октябрь 08, 2012, 16:00:53 »
Все это забавно, но есть одно но

VK меняет свой функционал не по дням, а по часам. Я до этого писал для себя - т.к. сайт очень хорош базой музыки и просто получал список и скачивать его же на свой любимый ПК, а далее уже куда захочу.

Буквально неделю (сейчас по личным причинам особо нет времени) назад я уже не смог скачать свою любимую музычку. Вот пока есть свободная минутка - переписал все + дописал для других .

К чему все это - насколько часто будут выходить обновления у собственной проги ??? Они там поменяют что-нибудь и сидеть ковыряться ? Не - ну - интересно, конечно... Хотя тогда уже проще готовый продукт выпускать.

PS: у Вас там функций уже достаточно - только обновлять их надо.

PSS: я бы вступил в команду, но при условии, что выпускать уже готовый продукт -> exe файл. А в нем уже делать все приблуды.

Оффлайн Medic84 [?]

  • Администратор
  • *
  • Сообщений: 1416
  • Репутация: 303
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #5, Отправлен: Октябрь 08, 2012, 16:04:05 »
API меняется редко, и то только добавлением функционала, а не измегением, написанная мною программа работает до сих пор...

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438

  • Автор темы
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #6, Отправлен: Октябрь 08, 2012, 16:11:08 »
Странно, но я не мог сделать авторизацию через свой старый скрипт использую Desktop приложение.

Изменения, которые заметил:
При авторизации через https://oauth.vk.com/authorize?.... всегда требует нажатия "разрешения", даже, если у пользователя уже добавлено это приложение с необходимыми правами.

PS: видимо попался на смену API
PSS: чуть-чуть приувеличил со временем))))

UPDATE to 1.0.2 (beta):
 * Небольшие косметические изменения в коде
 * Добавил пример получение списка аудио-записей другого пользователя через его "короткое имя"
« Последнее редактирование: Январь 24, 2013, 11:02:30 от ---Zak--- »

Оффлайн Бумбликус [?]

  • Новичок
  • *
  • Сообщений: 7
  • Репутация: 1
    • Награды
Re: Обращение к API (vk.com) через WinHttp
« Ответ #7, Отправлен: Октябрь 10, 2012, 22:12:00 »
Цитировать
VK меняет свой функционал не по дням, а по часам. Я до этого писал для себя - т.к. сайт очень хорош базой музыки ...
Буквально неделю (сейчас по личным причинам особо нет времени) назад я уже не смог скачать свою любимую музычку. Вот пока есть свободная минутка - переписал все + дописал для других .

javascript:function playAudioNew(a){ var url = document.getElementById('audio_info'+a).value.split(',')[0]; window.open(url,'Download'); }
в закладки и можно качать любую музыку из ВК, года полтора уже пользуюсь.

не совсем в тему и не совсем AutoIt, но вдруг пригодится ;)

Русское сообщество AutoIt

Re: Обращение к API (vk.com) через WinHttp
« Ответ #7 Отправлен: Октябрь 10, 2012, 22:12:00 »

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438

  • Автор темы
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #8, Отправлен: Октябрь 10, 2012, 23:48:10 »
2 Бумбликус
Я юзаю где только можно Google Chrome
1. У меня твой скрипт переходит в поиск гугла, т.е. не срабатывает.
2. Раньше юзал такие скрипты, но не совсем удобно - там еще рядом с песней кнопка появляется "Download" и каждую песню надо так сидеть клацать. У меня 800+ песен - представь как это все будет)))

Здесь чутка поудобнее (могу скинуть код) запустил и сиди жди, когда все скачается))))
Да и сидеть запоминать - что скачал, а что нет... не особо. Я поставил фильтр (еще не совсем доделал) на символы (отсеиваю лишние символы) + идет проверка есть ли такой уже файл или нет. Если нет - не качать...

Но (!) спасибо за скрипт... может кому пригодится на самом деле...

PS: скоро тему создам - как сделать, чтобы autoit читал свойства из файла и вкладку "сводка"

Оффлайн Бумбликус [?]

  • Новичок
  • *
  • Сообщений: 7
  • Репутация: 1
    • Награды
Re: Обращение к API (vk.com) через WinHttp
« Ответ #9, Отправлен: Октябрь 11, 2012, 00:03:26 »
Цитировать
Я юзаю где только можно Google Chrome
1. У меня твой скрипт переходит в поиск гугла, т.е. не срабатывает.
2. Раньше юзал такие скрипты, но не совсем удобно - там еще рядом с песней кнопка появляется "Download" и каждую песню надо так сидеть клацать. У меня 800+ песен - представь как это все будет)))

в хроме да, если вставить в адресную строку, то пытается искать в интернетах. поэтому делаем так: создать закладку и в URL пишем этот скрипт.
еще один минус у этого скрипта - когда поочередно скачиваешь много песен, аудио становиться недоступно. видимо ВК что то неладное подозревает))) правда через несколько минут опять нормально работает

Оффлайн Medic84 [?]

  • Администратор
  • *
  • Сообщений: 1416
  • Репутация: 303
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #10, Отправлен: Октябрь 11, 2012, 19:08:53 »
---Zak---  [?]
Цитировать
Но (!) спасибо за скрипт... может кому пригодится на самом деле...
Скачал расширение и как то не парюсь вообще...

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438

  • Автор темы
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #11, Отправлен: Октябрь 26, 2012, 16:49:00 »
Уважаемые посетители, в особенности те, кто все же проверял работоспособность данного скрипта, убедительно прошу Вас Выполнить мою просьбу !!!

На момент запуска скрипта 1.0.2 (beta) получил отказ о входе в систему с сообщением в консоли "ОШИБКА: не верно указан логин и пароль...".

Убедительная просьба проверьте работоспособность скрипта - в котором я уже сомневаюсь, но решение нашел (о нем позже - возможно в понедельник или даже раньше - просто я через 10 минут уйду от ПК до глубокой ночи)  :stars:

Заранее спасибо...

PS: это не призыв запуска скрипта с криком "почему меня тут так мало похвалили" - это призыв проверить.
« Последнее редактирование: Октябрь 26, 2012, 16:56:20 от ---Zak--- »

Оффлайн Medic84 [?]

  • Администратор
  • *
  • Сообщений: 1416
  • Репутация: 303
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #12, Отправлен: Январь 23, 2013, 19:39:37 »
---Zak---  [?]
Цитировать
PSS: я бы вступил в команду, но при условии, что выпускать уже готовый продукт -> exe файл. А в нем уже делать все приблуды.
А какой продукт Вы собрались выпускать? Клиентов, качалок музыки, рисовалок- достаточно. Я написал конечно себе глобальную качалку музыки, но толку от нее?

Я изменил авторизацию, но она теперь все время требует подтверждения. Не против если я буду использовать твою?

И минус в твоем варианте - разрешение запрашивается скрытно, и нажимается скрытно - это запрещено правилами Вконтакте.
« Последнее редактирование: Январь 23, 2013, 20:57:53 от Medic84 »

Оффлайн ---Zak--- [?]

  • Скриптер
  • ****
  • Сообщений: 438

  • Автор темы
  • Репутация: 111
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #13, Отправлен: Январь 24, 2013, 10:21:42 »
2 Medic84
Цитировать
А какой продукт Вы собрались выпускать?
На данный момент никакой продукт не хочу выпускать - пишу для себя и своих знакомых. Одному этим всем делом заниматься скучно, противно и не охота)))))
Цитировать
Клиентов, качалок музыки, рисовалок- достаточно.
Клиентов много, но что за клиенты не знаю - а свое всегда приятнее...Причем я знаю как и куда мой пароль от ВК подставляется
Цитировать
Я написал конечно себе глобальную качалку музыки, но толку от нее?
У каждого свои интересы - мне качалка нужна и не более.
Цитировать
Не против если я буду использовать твою?
Конечно не против... сейчас выложу последнюю версию "Version: 1.0.3 (beta)" - там с авторизацией не будет проблем, 1.0.2 - у меня не срабатывала.
Цитировать
И минус в твоем варианте - разрешение запрашивается скрытно, и нажимается скрытно - это запрещено правилами Вконтакте.
Возможно и правилами ВК так же запрещено скачивать от туда музыку, размещать ХХХ и т.п. Если Вам не нравиться - можете не пользоваться, если хотите подправить - подправте код и т.п. Я сюда пришел делиться своими достижениями, а так же питать от сюда информацию. Если смогу быть полезен, всегда рад помочь...
ЗЫ: "мы в одной лодке - ловим одних и тех же жуликов"

Можно вообще не использовать авторизацию: Документация » Авторизация » Авторизация сервера приложения
Но там необходимо подставить client_secret для каких целей используется он лично мне еще не понятно - в частности если client_secret попадет в чужие руки. Ну и решил, что метод не изучен - не буду использовать.

ЗЫ: Обновил до "1.0.3 (beta)"
« Последнее редактирование: Январь 24, 2013, 11:21:16 от ---Zak--- »

Оффлайн Medic84 [?]

  • Администратор
  • *
  • Сообщений: 1416
  • Репутация: 303
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Обращение к API (vk.com) через WinHttp
« Ответ #14, Отправлен: Январь 24, 2013, 22:21:13 »
Я Вас не осуждаю не в коем случае. Просто если библиотека пишется для народа, то народ нужно либо предупредить, либо написать по требуемым правилам (а там каждый для себя разберется, стоит ему их нарушать или нет). Я разобрался со своей авторизацией и оставил ее. Но Вы все равно молодец, что написали свой скрипт и поделились им.

Русское сообщество AutoIt

Re: Обращение к API (vk.com) через WinHttp
« Ответ #14 Отправлен: Январь 24, 2013, 22:21:13 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
2 Ответов
3082 Просмотров
Последний ответ Январь 27, 2010, 13:49:07
от oneDmitry
140 Ответов
62262 Просмотров
Последний ответ Апрель 19, 2015, 02:43:50
от Broadcastic
1 Ответов
2720 Просмотров
Последний ответ Апрель 07, 2013, 12:16:18
от inververs
4 Ответов
1771 Просмотров
Последний ответ Январь 27, 2014, 20:49:53
от La2Angel
5 Ответов
2469 Просмотров
Последний ответ Февраль 23, 2014, 13:54:16
от Garrett
5 Ответов
1569 Просмотров
Последний ответ Май 05, 2014, 11:23:10
от InnI
3 Ответов
1436 Просмотров
Последний ответ Март 30, 2015, 17:16:15
от Rioran
5 Ответов
1599 Просмотров
Последний ответ Февраль 09, 2016, 12:54:16
от Cornet
2 Ответов
715 Просмотров
Последний ответ Февраль 10, 2016, 12:07:37
от Eugenius
7 Ответов
1712 Просмотров
Последний ответ Февраль 24, 2016, 14:39:56
от The_Immortal