LINUX.ORG.RU

0
Всего сообщений: 29

Разработчикам вконтакте(прочим не интересно)

Если здесь есть разработчики вк, то могу подарить идею:

Ситуация: ко мне в группу с одноразовых аккаунтов вк переодически спамят с одного канала на ютубе.

Идея: создать фильтр, который при постинге видео ИЛИ ССЫЛКИ на него будет проверять

  1. имя пользователя ютуба,
  2. его id,
  3. id канала,
  4. ссылку на канал, если спамер дал каналу url
  5. название ролика на соврадение с шаблоном,
  6. id плейлиста

и при совпадении с указанным запрещать публикацию сообщения.

В принципе было бы хорошо ещё проверять название видео на наличие запрещённых слов.

Линукс тут при том, что группа в которую спамят посвящена LinuxCNC.

 , , , ,

torvn77 ()

Вконтакт опять поломал API

Собственно, сабж. Причём, по ходу, значительнее чем в прошлый раз. В прошлый раз всё сводилось к ID приложений для работы с Вконтактом. В этот раз, по ходу, так:

ВК опять что-то сломали в своём API, поэтому нужно будет пересобрать костыль. И не думаю, что обойдётся сменой циферок, потому что в новом API закрыты или полностью переписаны различные методы.

https://vk.com/wall-76425828_2247259

 ,

saahriktu ()

почему ВК перестал отвечать парсеру?

был у меня скриптик на питоне, который работал и возвращал результаты в виде html с набором фамилий:

import requests


headers = {
    'User-agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:50.0)'
}

response = requests.get('https://vk.com/people/Козлов', headers=headers, proxies={"http":"http://10.10.1.10:3128"})
    
if response.status_code == 200:
    print('ok', response.text)
else:
    print('fail')

но после нескольких запусков стал возвращаться html без набора фамилий

<div id="no_results" class="no_rows">Ваш запрос не дал результатов<br> Возможно, Вы искали   <a hr

возможно, ВК как-то защищается от большого количества однотипных запросов с одного IP. Подскажите пожалуйста как это обойти. Как видите, я использовал headers и proxies

или вообще причину того, что скрипт перестал работать нужно искать в другом?

 , ,

prozaik ()

VK API: получить список постов со стены группы

Я с VK API дела не имел, так что вопрос, возможно, не совсем корректен: можно ли через API получить список постов (стена) публичной группы? Судя по API можно. Но что для этого требуется (кроме регистрации app id)? Я имею ввиду, нужно ли для этого телодвижения со стороны владельца группы?

 , ,

maverik ()

Как сделать так что бы VK Bot на Python работал для каждого пользователя отдельно?

Просто у моего бота есть переменные которые в ходе общения с ним изменяются и если два или > людей будут одновременно с ним говорить то все запутается, возможно ли это исправить?

Человек на toster.ru написал:

"Возможно использовать

vars = {

"user1":{"a":1,"b":2},
"user2":{"a":4,"b":1},

}

current_user = api.get_user_id()

vars[current_user]["a"] = 5"

А куда это вставлять и как редактировать под себя? Тем более в vk_api вообще ничего подобного этому: api.get_user_id() нет.

 , , ,

Stivux ()

Есть ли тулза для скачивания фотографий из Вконтакте?

Всем добрый вечер! Собственно вопрос? Хочу собрать много фотографий из Вконтакте, из определенного региона. Есть ли тулза для скачивания фотографий из Вконтакте пачками прям много-много? API вк к сожалению не подходит, там определенные ограничения. Фотографии нужны для практики для нейронной сети, очень интересовало тема про компьютерное зрение.

 , , , ,

Deleted ()

Как запустить скрипт Python на хостинге?

Есть хостинг Pythonanywhere и скрипт, который используется для бота ВКонтакте через LongPoll. Через консоль он работает нормально, но можно ли сделать так, чтобы сайт принимал эти запросы или хотя бы запустить скрипт на веб-сайте? Или же перейти на PHP и переписать бота на нём, т.к. сайты с PHP дружат легче, не?

 , ,

ANDROSHA ()

Это норма?

mono, Pinkbyte, посчитаете нужным перенесите это в Security. Лично я пока сомневаюсь в том, что топик соответствует данной теме, поэтому и пишу сюда.

История такова: есть сайт с говноприложением для смарт ТВ — http://smarton.net.ua/ и, однажды вечером, блуждаю по гуглу как аутист, заметил, что у них проиндексирован Гуглом их плейлист, пример.

Как видите, сам ответ идет в xml.

Полной с примерами использования документации на VK.COM XML API я сходу не нашел (долблюсь в глаза?).

Так вот, у меня вопрос, чем чревато вот такое торчащее наружу API к тентаклику на сайте? Из того, что я могу предположить, очевидно, что можно просто спарсить всех пользователей этой приблуды. Но от этого толку мало. А вот возможно ли нечто по-настоящему нехорошее, как-то перехват токена авторизации, взлом зомбоящика и т.д.?

P.S. Сам сайтик вроде как на ASP.Net и Windows Server соответственно :-)

 , , ,

Twissel ()

firefox vkontakte не отправляются голосовые сообщения

Сабж. На хроме всё в порядке.

 ,

isaq ()

OAuth 2.0 standalone app боль поп\r\r\rголове ★★★★★

Пам-парам-пам:

OAuth 2.0: 1-клиент отсылает запрос на сервер с параметрами
             для доступа к данным пользователя с redirect_uri
             на который в последствие будет перенаправлен
             пользователь и выдан токен в теле адресной строки

           2-сервер выдаёт страницу подтверждения для
             пользователя принимает ли он условия которые
             приложение запрашивае, он тыкает кнопку "да"

           3.0-<счастье> 
                 redirect_uri можно указать localhost и путём 
                 временного поднятия микро http сервера
                 получить токен, всё в рамках простокола OAuth,
                 приложение использует любой дефолтный браузер
                 для аутентификации пользователя и получения токена
              </счастье>

           3.1-<боль>
                  для доступа к личным данным тоесть scope=messages
                  необходимо всё тоже самое за исключением того
                  что redirect_uri обязательно должен быть вида
                  https://oauth.vk.com/blank.html где подразумевается
                  что ВСТРОЕННЫЙ В ПРИЛОЖЕНИЕ БРАУЗЕР!!1$1! должен
                  перехватить страницу редиректа и извлечь токен
                  что естественно прозрачно не прокатит с рандомным 
                  браузером. И вообще никакого webUI встроенного нет фуфуфу.
                </боль>
                Ауенно глядь, муа муа мон мезами, шерше эля раков на горе 

  • - Если подумать то можно обойти притворившись браузером https клиент / парсинг html / отправка POST вроде всё клёво но тут затык суть OAuth теряется, можно хочет он или нет запросить любые права и нажать да автоматически - плохо нииихачу я так.
  • - Если ещё подумать то можно запустиь авторизацию в iframe и из root окна получить в последствии url iframe c токеном, но и тут затык vk видит что он в iframe и делает моментально редирект в никуда, то есть даже проверить идею с iframe не получается.

И так что я хочу? А ничего особенного провести OAuth аутентификацию
посредством дефолтного браузера пользователя и получить токен, а именно
адресную строку в итоге https://oauth.vk.com/blank.html#блабляблаksdajfhklsdjfhlksdfhjsdklfjh
Есть у кого какие идеи? Любые, или всё же мне придётся притвориться браузером?
Собственно без запроса прав на messages я использую браузер пользователя,
который у него по умолчанию, тут проблем нет так как я имею возможность задать
редирект с токеном как сказал выше на localhost https://github.com/fedor-elizarov/vktray
Уж точно чего я не буду делать это тащить webkit-dev библиотеки в зависимости
для одноразового запроса авторизации. Всяки хаки приветсвуются :D

 , , ,

Dron ()

LORSTARTER ★★★★★

Всё началось с того что я наверное немного приборзел И так имеем -> работы нет, жрать почти нечего, на новый год вкусные сухари по ходу будут,
пойти «грузить вагоны» не в состоянии, куда деваться. включаем «ничёнезнаю» и пишем тут :D

Так вот ждуном в job проситься уже желания нет особого в 90% вероятности это бесполезно,
поэтому (так я подобного тут раньше не видел) вдруг мне повезёт :D

Некоторое время назад я создавал треды по поводу парсинга json получения якорей из GET запросов
и всё это было нужно для написания уведомлялки о сообщениях из vk (дадададада ненужно).

Вчера читал vkapi и написал получение токена,
для автоматизации получения токена нужно ещё добавить микросервер.
А так же гуи обёртку этого всего для tray + notify-send для самих уведомлений.
Я думал работы будет на 5 минут, ан нет, нужно вникать в json/gtk/curl/etc
и ещё чтобы всё если что безболезненно разбиралось по кускам
(например вырвать сервер для переиспользования или aouch авторизацию ).
Так или иначе для меня написать даже такое это не пальцем об асфальт стукнуть.

Так вот я к чему клоню то :D Работы у меня нет, так? Тааак, следовательно я прошу задонатить мне любую сумму
и в обмен с течением времени получить работающую утилитку gui(tray) и cli на github MIT license.
То есть с миру по нитке. А то действительно беда уже с финансами, а тут как бы и не халява, а вполне взаимный обмен.
Процесс разработки :D Скриншотом :D

★P.S. - Писать начал вчера так что всё на очень начальной стадии.
★P.P.S - На github переопределенно выложить сразу >>> This is vktray
Лицензию не выставил так как иконки к примеру не все мои, будет чисто будет MIT (да, я в курсе про creative commons)
И вот она самая главная попрошайская ссылка для донана :D DONATE

Помимо этого я ничего не собираюсь скрывать так что дополнительно live трансляция о донатах в наличии >>>LASTdonatTOPdonatGENERAL

Можете троллить до посинения мне по барабану :D
А лучше не троллить, а продонатить мне на новый год :D.
Илии как там обычно глаголят маркетологи - «Прими участие в настоящей разработке!
Cтань одним из создателей приложения и твой вклад увидят миллионы(сотни/десятки/тысячи/единицы) :D» Ну как что так.

P.P.P.P.S. Навожу мышку на «Поместить» меня немного в юмор разбирает :D Поехали!

 , , , ,

Dron ()

Вторая по популярности секта страны закручивает гайки

https://roem.ru/02-12-2016/237490/ending-music-api-vk/

16 декабря 2016 года «Вконтакте» отключит доступ к публичному музыкальному API сторонним приложениям, которые не контролируются соцсетью или не имеют с ней договорённостей. Большинство разработчиков договориться не смогут, предупредила соцсеть.

Ну что, есть на форуме: «Я там только ради музыки зарегистрирован»? Все, больше это отговорка не прокатит.

 , , , ,

Deleted ()

wgetом получить список фоток из ВК

Как получить wgetом список фоток из ВК?

Перемещено leave из development

 , ,

pomhub ()

Месенджер для vk в ubuntu 16.04 с двухфакторной аутентификацией

Привет, есть ли мессенджер поддерживающий vk и двухфакторную атентификацию в нем и, желательно, под 16.04? Purple для пинджина - не поддерживает, quitIM - тоже, пробовал и другие, тоже безуспешно.

 , , ,

paulis ()

FUSE readdir возвращает не весь созданный список?

class VKFuse(LoggingMixIn, Operations) :

    def readdir(self, path, fh):
        list = ['.', '..'] + [x[1:] for x in self.vkconn.readdir(path) if x != '/']
        print ("LIST: %s" % (list))
        
        return list

Вот почему readdir от self.vkconn.readdir(path) успешно получает список из всех 431 файлjd, о чем сообщает через print, но вот мне в диру выводится только первые 29 штук?

Это я мог накосячить или что?

 , , ,

bvn13 ()

Консольный vk

Есть ли в природе консольный клиент для vk? Если нет, то позволяет ли апи вк написать его на си?

 ,

someoneelsenotme ()

REST API to C API

Как принято представлять REST API в С API? так?

//return pointer on json string
pjson = method("param=val,val,val&param=val");
/*
....
parse json
...
*/
так?
method.param_one("val,val");//кусок
method.param_twoo("val,val,val");//кусок
char * rest = combinator();//клеим
pjson = give_me_json_server_pleeeasee(rest);//отсылаем, получаем указатель на строку json
/*
parse json ....
*/

и так далее, тут фантазировать можно долго. Так есть ли какие общепринятые договорённости на этот счёт?

Я про представление REST API через C API, а не про вызовы REST из С кода.

 , , ,

Dron ()

Python3, VKapi и строки

Добрый вечер.

Совсем уже измучался. Создаю прогу, в которой есть авторизация ВК. Юзаю libVK от dimka665. Всё бы хорошо, но я кое-чего не догоняю. Есть код:

#!/usr/bin/env python3
import curses
import vk

#Start ncurses window
global stdscr
stdscr = curses.initscr()
curses.noecho()
curses.cbreak()
stdscr.keypad(True)

def Close(): #Close the window
    curses.nocbreak()
    stdscr.keypad(False)
    curses.echo()

def Clear(): #Clear NCurses window
    stdscr.clear()
    stdscr.refresh()
    curses.endwin()

def VKLogin(): #Start VK session
    #Get login
    from curses.textpad import Textbox, rectangle
    stdscr.addstr(0, 0, "Enter your VK login: (Ctrl-G/Enter to continue, Ctrl+H to delete symbols)")
    editwin = curses.newwin(1,30, 2,1)
    rectangle(stdscr, 1,0, 1+1+1, 1+30+1)
    stdscr.refresh()
    box = Textbox(editwin)
    box.edit() #Let the user edit until Ctrl-G is struck
    login = str(box.gather())

    #Clear window
    Clear()

    #Get password
    stdscr.addstr(0, 0, "Enter your VK password: (Ctrl-G/Enter to continue, Ctrl+H to delete symbols)")
    editwin = curses.newwin(1,30, 2,1)
    stdscr.refresh()
    rectangle(stdscr, 1,0, 1+1+1, 1+30+1)
    stdscr.refresh()
    box = Textbox(editwin)
    box.edit() #Let the user edit until Ctrl-G is struck
    stdscr.clear()
    password = str(box.gather())

    #Clear window
    Clear()
    curses.endwin()

    #Start session with collected data
    session = vk.AuthSession(app_id = 5350360, user_login = login, user_password = password)
    api = vk.API(session, v = '5.3.5', lang = 'ru', timeout=10)
    #api.users.get(user_ids=1)
    def Menu(): #Navigation menus
        from curses import panel
        stdwin = curses.newwin()
        #TODO
    #Menu()

VKLogin()
Close()
#TODO: menu, authorization
Как видите, через ncurses-textbox задаётся логин и пароль, которые передаются vk.AuthSession(). ОДНАКО, ответ являет собой жалобу на неверный пароль. При этом, если чётко прописать логин/пароль в vk.AuthSession(), то всё будет хорошо.

Вопрос прост: ЧЯДНТ?

 , , , ,

mradermaxlol ()

Получение данных после якоря #

По мотивам Посоветуйте библиотеки.

Так, тут сказано

3. Получение access_token
После успешной авторизации приложения браузер пользователя 
будет перенаправлен по адресу REDIRECT_URI, указанному при 
открытии диалога авторизации. При этом ключ доступа к API 
access_token и другие параметры будут переданы в 
URL-фрагменте ссылки:

http://REDIRECT_URI#access_token= 533bacf01e11f55b536a565b57531ad114461ae8736d6506a3&expires_in=86400&user_id=8492


Хорошо, пока мне не дали прямую авторизацию (с которой эта хренатень с браузерами будет ненужна)для приложения я запускаю локальный сервер вешаю на localhost:8080 это REDIRECT_URI всё нормально токен дают, но после # данные же не отправляются на сервер как быть то? Просить пользователя копировать токен и сохранять как в vksearch не хочется.

Тут смотрю два подписались так что вот решение. В настройках приложения выставляем http://localhost иначе будет ругаться на некорректный REDIRECT_URI. Затем шлём пользователя на

https://oauth.vk.com/authorize?client_id=ID_ПРИЛОЖЕНИЯ&display=page&redirect_uri=http://localhost:8080&scope=message&response_type=token&v=5.45

На http://localhost:8080 должен уже висеть сервер и отдать как кому удобно это

<html>
<head>
    <meta charset="utf-8">
    <title>vklin</title> 
</head>
<script type="text/javascript" charset="utf-8">
    var anc = window.location.hash.replace("#","");
    if (anc == "") {anc = "none"} //тут можно средиректить на страницу с ошибкой
    var def_url ="http://localhost:8080/"; //редирект тупо на самого себя
    //alert(anc);
    window.location.replace((def_url+anc));//а теперь сервер получит GET запрос в теле которого таки уже будет токен
                                           //который останется только спарсить и сохранить. И можно дёргать VK API.
</script>
</html>

 , ,

Dron ()

Скрипт на python + vk api + conky

И так. Всем доброго времени суток. Есть идея выводить последний пост с группы вк в conky, но получаются проблемы. Код для python 2.7

#!/usr/bin/env python
#coding=utf-8

from urllib2 import urlopen
import json

address = 'https://api.vk.com/method/wall.get?user_id=ID_Группы_или_пользователя%20&v=5.45&access_token=Ваш_TOKEN'
data = urlopen(address)
decoded_response = data.read().decode('utf-8')
final_data = json.loads(decoded_response)
post = final_data['response']
print post

В итоге я получаю JOSN ответ как я понял, но приходит какая то хрень за место того что должно бы.

[{u'post_source': {u'platform': u'android', u'type': u'api'}, u'copy_history': [{u'post_source': {u'type': u'vk'}, u'text': u'\u0420\u0435\u0448\u0438\u043b\u0430 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0444\u0438\u043b\u044c\u043c\u0435\u0446 \u043e\u0434\u0438\u043d. \u041f\u0435\u0440\u0435\u0434 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u043e\u043c \u043c\u043d\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0447\u043b\u0435\u043d. \u042f \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0430\u0441\u044c. \u0414\u0430\u043b\u0435\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043b\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u0433\u0443\u0431\u044b. \u041f\u043e\u0442\u043e\u043c \u0441\u043a\u0430\u0437\u0430\u043b\u0438 \u0441\u0435\u043a\u0440\u0435\u0442 \u043f\u043e\u0445\u0443\u0434\u0435\u043d\u0438\u044f \u0410\u043b\u043b\u044b \u041f\u0443\u0433\u0430\u0447\u0435\u0432\u043e\u0439. \u041d\u043e \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0439\u0442\u0438 4838477 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0439, \u0447\u0442\u043e\u0431\u044b \u0435\u0433\u043e \u0443\u0437\u043d\u0430\u0442\u044c. \u041f\u043e\u0442\u043e\u043c \u043c\u043d\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b\u0438 \u043e \u043d\u043e\u0432\u043e\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0439 \u0438\u0433\u0440\u0435. \u041d\u043e \u0447\u0442\u043e\u0431\u044b 

Прошу помощи. На Python.su послали в саппорт вк.

 , , ,

funk2256 ()