Задать вопрос
  • Индексируются ли в поисковиках закрытые группы?

    orlov0562
    @orlov0562
    I'm cool!
    нет, так же как и страницы закрытые к индексации (в вк есть соответствующие настройки)

    выйди из соц. сети и попробуй зайти на страницу группы - все что увидишь, это и индексируется
    Ответ написан
    2 комментария
  • Индексируются ли в поисковиках закрытые группы?

    sergiks
    @sergiks Куратор тега ВКонтакте
    ♬♬
    Не индексируются.

    Поисковый боты выступает как «дядя с улицы» – незалогиненный пользователь. Будет такому видно содержание закрытой группы? Нет.

    Особый случай, когда группа была открытой. Проиндексировалась. Потом админ решил «вдруг» сделать её закрытой. Сделал. А поисковый кэш остался.

    P.S. Проверить, проиндексирована ли ваша секретная закрытая группа можно запросом в Google и Яндекс: site:vk.com/vasha_sekretnaya_gruppa
    Ответ написан
    2 комментария
  • VK API имеет метод для поиска видео в группе?

    JetBaget
    @JetBaget
    Программист Python
    Вот выдержка из документации VK API к методу video.search:

    "После успешного выполнения возвращает объект, содержащий число результатов в поле count и массив объектов видеозаписей в поле items.

    Если был задан параметр extended=1, возвращает число результатов в поле count, отдельно массив объектов видеозаписей в поле items, пользователей в поле profiles и сообществ в поле groups. "

    Соответственно, можно после выполнения поиска проверять, есть ли интересующее вас сообщество в поле "groups".
    Отдельного метода для поиска видео в группе я не нашел.
    Ответ написан
    Комментировать
  • Как проверить открыта ли стена вк?

    sergiks
    @sergiks Куратор тега ВКонтакте
    ♬♬
    Метод users.get() позволяет указать поле can_post, которое обозначает, может ли текущий пользователь постить на стену юзерам, id которых указаны в поле user_ids запроса.

    Скорее всего, вам захочется проверять открытость стены сразу у нескольких пользователей. Удобно использовать метод execute() для фильтрации только нужных данных. Передав в execute() такой код, получите назад массив единиц и нулей, соотв. возможности постить на стену у запрошенных юзеров:
    return API.users.get({"user_ids":"12,12345,1234567","fields":"can_post"})@.can_post;

    id пользователей перечислены через запятую. Пример ответа:"response": [0, 1, 0] значит, что юзерам 12 и 1234567 запостить не получится, а вот 12345 – можно. Порядок в ответе соответствует порядку в запросе.

    Для групп можно узнать точно так же, но методом groups.get() – тоже поле can_post.
    Ответ написан
    Комментировать
  • Альтернативы Adsense и Директору для начинающих проектов?

    gobananas
    @gobananas
    finishhim.ru
    К сожалению, почти нет. В Директ вас не возьмут даже если у вас больше 500 человек будет, у меня знакомый сайт с 6000 чел в сутки подавал (нормальный сайт такой) и его не приняли.
    В качестве альтернатив писюнов гуглите CPA-партнёрки и ставьте их код. Но с такой посещаемостью очень долго первой выплаты ждать придётся.
    Ответ написан
    3 комментария
  • Может ли владелец группы в вк отобрать мой домен?

    Jump
    @Jump
    Системный администратор со стажем.
    Отобрать домен можно только через суд - владелец зарегистрированной торговой марки совпадающей с вашим доменом.
    Так же отобрать может любой кто имеет рычаги влияния на регистратора.
    Ответ написан
  • Можно ли ускорить обновление DNS после продления домена?

    Sanes
    @Sanes
    Ваш интернет-провайдер может кешировать, ОС, браузер, много чего.
    Очистить кеш в Windows ipconfig /flushdns
    Ответ написан
    Комментировать
  • Как добавить пользователей vpn к локальной сети предприятия?

    @Tabletko
    никого не трогаю, починяю примус
    Ответ написан
    Комментировать
  • Как реализовать защищенный и не отслеживаемый телефон?

    @d-stream
    Готовые решения - не подаю, но...
    Просто использовать метод "неуловимого Джо".
    Судя по комментам и ответам - все предпосылки в наличии
    Ответ написан
    Комментировать
  • Удаление комментариев к записи сообщества через VK api?

    @entermix
    1) Получается для удаления комментария мне обязательно требуется использовать, например, JavaScript SDK?

    Верно.

    2) Тогда как мне без непосредственного участия пользователя удалять комментарии?

    Никак, собственно для этого и есть ограничение, чтобы не смогли удалять без ведома пользователя.

    3) Раз такое дело, мне вообще всё приложение нужно завязывать на VK JavaScript SDK?

    Если у Вас клиентское приложение - да.
    Ответ написан
    Комментировать
  • Что такое концентраторы, коммутаторы и маршрутизатор?

    ipswitch
    @ipswitch
    IT-инженер
    Слушаем сюда, дедушка сейчас по-пацански попробует.

    Концентратор - это "хаб" (hub).
    Больше всего похож по смыслу на криво сделанный электрический тройник-переноску, когда к одной розетке напаяно ещё несколько. Работает так: тупо пересылает всё, что приходит в любую дырку на все остальные дырки. А компы уже разбираются, это мне или не мне.
    Сейчас практически нигде уже не используются из-за удешевления коммутаторов.

    Коммутатор - это "свитч" (switch).
    Это по духу такой уже нормально сделанный электрический тройник-удлинитель, вполне годный к использованию.
    Работает так: читает в заголовке адрес, кому же это пришло, и пересылает это только в нужную дырку.
    Бывают на разное количество портов (дырок) - от небольших настольных (4-8 портов) до больших стоечных (к примеру, 48 портов).

    И хаб, и свитч применяются для образования сетей - в них тыкают компы. Также можно применить и то, и другое устройство реально в качестве удлинителя, когда "дырок" не хватает.

    Маршрутизатор - это "роутер". (router).
    Умное устройство с процессором и памятью, уже совсем соображающее. Применяется для объединения сетей (а также для разделения, т.е. выноса в обособленную подсеть). Главная фишка - держит в памяти правила, как из сети А достать до сети Б. Таким образом позволяет компьютерам одной сети достучаться до компьютера в другой сети. При этом это остаются две различные сети.

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

    Ещё простой бытовой пример - любые домашние роутеры. Одна сеть - LAN, всё, что у Вас дома (всё, что висит на WiFi и подключено проводом), другая сеть - WAN, то бишь Интернет от провайдера. И ваш роутер как раз связывает эти две сети.
    Домашние роутеры также содержат небольшой коммутатор (обычно на 4 порта) для подключения компов в домашнюю сеть (LAN).
    Ответ написан
    1 комментарий
  • Как найти причину утечки трафика в Windows XP?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    1. Винда:
    - постоянно проверяет обновления, причем обьем трафика может быть весьма значительным
    - постоянно сливает накопленные данные ("стучит"), в особенности десятка

    2. Браузеры:
    - постоянно проверяют обновления на себя и плагины
    - если он был открыт, постоянно поддерживают соединения с сайтами

    3. Весь прочий софт:
    - постоянно проверяет обновления. Этим страдают все - от Adobe Reader до какой-нибудь стокилобайтной фигушки, разница только в размере обновлений :) Если это был ноут, то обычно производители ноутов ставят свой "сверхполезный" софт, который тоже постоянно лезет на сайт производителя и проверят обновления и на себя и на ноут...
    Ответ написан
    1 комментарий
  • Как найти причину утечки трафика в Windows XP?

    Jump
    @Jump Куратор тега Системное администрирование
    Системный администратор со стажем.
    Как найти причину утечки трафика в Windows?
    Взять у оператора распечатку и посмотреть с каких адресов когда и сколько было скачано.

    Непонятно при чем тут вирусы.
    И непонятно о каких объемах трафика идет речь.
    Для современного компьютера вполне в порядке вещей скачать от нечего делать 10-20гб в сутки.
    Ответ написан
    3 комментария
  • Как оператор сотовой связи понимает, что сим-карта выдаёт интернет на смартфон или на роутер/USB-модем?

    @yaror
    10 лет в мобильном телекоме
    Уже немного обсуждалось здесь:
    Работа роутера?

    Ещё раз повторюсь, немного творчески переработав ответ.
    Детекцию раздачи трафика можно условно разделить на несколько рубежей.

    1. Рубеж первый
    Каждое устройство в сотовой сети в момент регистрации сообщает сети свой IMEI - код устройства, по которому можно однозначно определить модель Вашего устройства.

    Да, нужна база IMEI с device capabilities - описанием того, что это за устройство и что оно умеет. Но она у мобильного оператора уже есть: Вам, когда Вы впервые вставляли сим-карту в новый телефон, прилетали SMS-кой настройки интернета? Настройки у разных производителей немного разные, поэтому надо знать модель абонентского аппарата.

    Получается, что как только ты вставляешь сим-карту в Wi-Fi-роутер, оператор сразу понимает, что это роутер, а значит, он будет раздавать интернет через Wi-Fi.
    Реализация этой технологии оператору обходится совершенно бесплатно.

    2. Второй рубеж: анализ TTL.
    Надо понимать, что на первом рубеже будут отловлены только собственно роутеры, а включенная в настройках телефона точка доступа Wi-Fi оператору не видна.
    Но есть уловка: устройство, раздающее интернет по Wi-Fi, по умолчанию будет уменьшать поле TTL на всех проходящих через него ip-пакетах.
    Зная типичные начальные значения TTL для мобильных платформ, можно реагировать на все прочие значения как сигнал, что здесь где-то притаился Wi-Fi.
    Для реализации этого, оператору уже потребуются дополнительные расходы.
    Понятно, что ставить отдельное устройство для отлова любителей Wi-Fi никто не будет, поэтому обычно этим занимается операторский DPI - комплекс, занимающийся классификацией и "раскраской" абонентского трафика, благодаря которому и становятся возможны, скажем, отдельные условия тарификации социальных сетей.
    Кстати, удивительно, но, во-первых, не все DPI это умеют (Эриксон, вам же стыдно, да?). Во-вторых, те, что умеют, умеют это за отдельные деньги в виде подлежащей покупке лицензии.

    3. Рубеж третий: эвристика
    Тема интересная и увлекательная.
    Да, абонент может поменять IMEI прямо в настройках телефона.
    Да, абонент может перепрошить телефон, чтобы тот не трогал TTL.
    Но, как только хитрых абонентов становится много, оператору становится выгодно вкладываться в расширенный анализ трафика на том же DPI.
    Итак, что можно сделать?
    Ну, сходу:

    3.1. Вы выходите в интернет прямо с телефона через встроенный браузер? Поздравляем, Вы только что в поле User-Agent протокола HTTP рассказали оператору, какая у вас мобильная платформа, и какой версии!
    Как так, с одного устройства оператор видит разные User-Agent, указывающие то на Android, то на Apple? Ребята, да у вас там Wi-Fi!

    3.2. TCP/IP fingerptinting. Разные мобильные платформы (те же Android/Apple) используют разные начальные значения полей в ip-пакетах. Да взять хоть тот же TCP Window size! Анализируя их, можно угадать как минимум производителя платформы. А комбинируя это с тем же анализом по IMEI...
    Ребята, а как так: само устройство у вас от Apple, а значения полей в ip-пакетах характерны для Windows Phone?
    Или почему ваш трафик похож то на Android, то на Blackberry?

    Понятно, что эвристический анализ реализован тем более не на каждом DPI, и за тем более отдельные деньги за лицензию. Да и производительность подобный анализ просаживает очень здорово...
    Однако, технические средства уже есть и, как только они начнут окупаться финансово, оператору становится выгодно их внедрять.
    Ответ написан
    6 комментариев
  • Парсинг стены вконтакта через АПИ, как решить проблему ограничения на кол-во запрашиваемых постов?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Перечитать документацию до полного просветления и обратить внимание на параметр offset
    Ответ написан
    Комментировать
  • Как лучше реализовать БД?

    maaGames
    @maaGames
    Погроммирую программы
    ФИО в три отдельные таблицы - имена и отчества часто повторяются. Фамилии просто для единого стиля.
    Дату безусловно в отдельную таблицу. 35млн / (365*100). На 100 лет по 1000 человек в день рождалось. На самом деле распределение не равномерное и выигрыш по скорости/памяти будет больше.
    Место рождения и место проживания скорее всего не две таблицы, а гораздо больше (есть смысл отдельно хранить города, улицы, дома).
    Ну и таблица с ID индивида, содержащая индексы всех его ФИО и прочего. Эту таблицу можно проиндексирвоать по всем столбцам для быстрого поиска.
    Простенькая реляционная база данных получается.
    Ответ написан
    4 комментария
  • Как правильно загружать картинки через VK API на PHP?

    @Nc_Soft
    <?php
    $token = '**************************************';
    $group_id = '1111111';
    $vk = new Vk($token);
    
    $image_path = 'image.png';
    copy('https://www.google.ru/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png', 'image.png');
    
    $upload_server = $vk->photosGetWallUploadServer($group_id);
    
    $upload = $vk->uploadFile($upload_server['upload_url'], $image_path);
    
    $save = $vk->photosSaveWallPhoto([
            'group_id' => $group_id,
            'photo' => $upload['photo'],
            'server' => $upload['server'],
            'hash' => $upload['hash']
        ]
    );
    
    $attachments = sprintf('photo%s_%s', $save[0]['owner_id'], $save[0]['id']);
    
    
    $post = $vk->wallPost([
        'owner_id' => "-$group_id",
        'from_group' => 1,
        'message' => "блаблабла",
        'attachments' => $attachments
    ]);
    
    
    class Vk
    {
        private $token;
        private $v = '5.37';
    
        public function __construct($token)
        {
            $this->token = $token;
        }
    
        public function wallPost($data)
        {
            return $this->request('wall.post', $data);
        }
    
        public function photosGetWallUploadServer($group_id)
        {
            $params = [
                'group_id' => $group_id,
            ];
            return $this->request('photos.getWallUploadServer', $params);
        }
    
        /**
         * @param $params [user_id, group_id, photo, server, hash]
         * @return mixed
         * @throws \Exception
         */
        public function photosSaveWallPhoto($params)
        {
            return $this->request('photos.saveWallPhoto', $params);
        }
    
        public function uploadFile($url, $path)
        {
            $ch = curl_init($url);
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_POST, true);
    
            if (class_exists('\CURLFile')) {
                curl_setopt($ch, CURLOPT_POSTFIELDS, ['file1' => new \CURLFile($path)]);
            } else {
                curl_setopt($ch, CURLOPT_POSTFIELDS, ['file1' => "@$path"]);
            }
    
            $data = curl_exec($ch);
            curl_close($ch);
            return json_decode($data, true);
        }
    
        private function request($method, array $params)
        {
            $params['v'] = $this->v;
    
            $ch = curl_init('https://api.vk.com/method/' . $method . '?access_token=' . $this->token);
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
            $data = curl_exec($ch);
            curl_close($ch);
            $json = json_decode($data, true);
            if (!isset($json['response'])) {
                throw new \Exception($data);
            }
            usleep(mt_rand(1000000, 2000000));
            return $json['response'];
        }
    }
    Ответ написан
    6 комментариев