Просим вконтакте напомнить про пельмешки. Как посмотреть дни рождения друзей в контакте

Всем приятно получать подарки, а ещё приятнее их дарить. Но совсем становится приятно, когда о твоём дне рождения помнят многие и многие, и близкие знакомые и далёкие. Очень приятно получить в день рождения смску или хотя бы сообщение в социальной сети, пусть с шаблонным поздравлением, но всё-таки тебя не забывают. Для iPhone/iPad существует замечательное, хоть и платное, приложение ВКонтакте.ДниРождения , которое напомнит вам о днях рождения ваших друзей в социальной сети вконтакте. Напомнит и поможет отправить небольшое поздравление, получив которое, ваш друг, возможно когда-то очень близкий, порадуется, что вы его не забываете

Если вы читаете статью с вашего iPhone/iPad, просто перейдите по

ЭТОЙ ССЫЛКЕ и сразу же сможете загрузить приложение ВКонтакте.ДниРождения . Если же вы читаете статью с компьютера, хватайте ваш iPhone/iPad, открывайте App Store и в поиске набирайте ВКонтакте.ДниРождения . Приложение стоит 1$. Лично мне совершенно не жалко этих денег за такое полезное приложение!

После установки в меню появится иконка приложения

Использование приложения ВКонтакте.ДниРождения очень простое. После первого запуска приложение загрузит список дней рождения ваших друзей, используя вашу учетную запись вконтакте. Для загрузки списка в главном меню нажмите кнопку Обновить

После этого в главном меню нажмите кнопку Настройки и настройте время суток, когда приложение ВКонтакте.ДниРождения будет уведомлять вас о том, кто из ваших друзей вконтакте празднует свой день рождения сегодня.

Так же можно не дожидаться уведомлений о днях рождения ваших друзей, а нажать в главном меню кнопку Друзья и увидеть ближайшие дни рождения ваших друзей вконтакте.

Лично я стараюсь писать поздравительные смс, нежели сообщения вконтакте. На пару рублей я не обеднею, а получить смску у юбиляра гораздо больше шансов, так как телефон всегда с собой, нежели неизвестно когда полезть в контакт и увидеть сообщение одно из многих и закрыть его на автомате. Но бывают случаи когда номера телефона друга, чей случился день рождения, нет. И на своей странице вконтакте номер телефона он так же не написал. Остается отправлять поздравительное сообщение в социальную сеть. Для этого в правом верхнем углу контакта, у которого сегодня день рождения, жмем конвертик

Сегодня меня вновь попросили напомнить человеку о важной вещи в определённое время. Но что делать, если я и про свои-то дела забываю постоянно, а уж тем более про дела кого-то ещё? И тут мне снова помог мой любимый python.

Честно говоря, обычные программы-напоминалки, что в телефоне, что в компьютере, меня не устраивали из-за их ограниченности рамками устройства + они совершенно не решали задачу, когда нужно напомнить о чём-то, но не мне. Решение пришло как-то само-собой. А что, если напоминания будут приходить как сообщения вконтакте? Если я не на рабочем месте - телефон свибрирует своим пуш-ап уведомлением, а за компьютером всё ещё очевиднее. Цель - написать скрипт, который читает мои сообщения о напоминании и в заданное время напоминает кому нужно о том, что, собственно, требуется. Ну раз идея пришла, я приступаю к её реализации.

Стартуем

Внимание! В этой статье я покажу как сделать это без использования API Вконтакте. Но для тех, кому хочется посмотреть(или использовать), как это делается с помощью, собственно, API, я прикладываю версию скрипта, работающего через API. Ссылка на него в конце статьи.

Для начала научим наш скрипт логиниться в эту социальную сеть. Всё просто, используем стандартный mechanize.Browser()

Br = mechanize.Browser() br.set_handle_equiv(True) br.set_handle_redirect(True) br.set_handle_robots(False) br.open("https://vk.com/") br.select_form(nr=0) br.form["email"] = name br.form["pass"] = password br.submit()
Вуаля! Мы зашли на свою страничку вконтакте. Теперь используем классную особенность вконтакта - возможность писать самому себе(кто не в курсе, как это делается - перейдите по ссылке vk.com/im?sel=id , где id - Ваш id в социальной сети. В моём случае это был 38591009).

Первым делом прочитаем эти сообщения. Для этого мне нужно узнать свой id(он есть в коде главной страницы, причём повторяется множество раз).

Self_username = "username" def get_self_page_id(br): br.open("https://vk.com/"+self_username) return br.response().read().split("

").split("
") all_numbers.append(msg_num) if first_start: msg_numbers = all_numbers first_start = False new_numbers = set(all_numbers) - set(all_numbers).intersection(set(msg_numbers)) for num in new_numbers: reply_to_message(br, get_message_text(response, num)) #вызов функции ответа на сообщение. Опишу её позже. msg_numbers = all_numbers

Начинаем внутренний диалог

Отлично. Теперь мы знаем какие сообщения поступили мне от меня недавно. Осталось их понять и сделать что-то в ответ. Займёмся сначала первой задачей:

Def reply_to_message(br, message): if message.find("напомнить") == -1: print "nothing" else: print "I obey, my lord" ms_words = message.split(" ") user = "self" time_s = datetime.datetime.now().strftime("%H:%M") day_s = str(datetime.date.today()) msg = "something went wrong" times = message.split("|") if len(times) == 1: times = "1" else: times = int(times) if ms_words == "в": user = "self" time_s = ms_words msg = message.split("текст ").split("|") elif ms_words == "день": user = "self" time_s = ms_words day_s = ms_words msg = message.split("текст ").split("|") elif ms_words == "в": user = get_page_id(br, ms_words) time_s = ms_words msg = message.split("текст ").split("|") elif ms_words == "день": user = get_page_id(br, ms_words) time_s = ms_words day_s = ms_words msg = message.split("текст ").split("|") let_it_do(user, time_s, day_s, msg, times) #вызов функции, которая знает, что делать с полученными из сообщения значениями.
Здесь я спличу полученные сообщения и заношу в переменные соответствующие значения. В общем, отвечаю на вопросы «кому напомнить?», «что напомнить?», «когда и сколько раз это сделать?». Синтаксис сообщения/команды выбрал не сложный: напомнить [кому] [дата] в [время] текст [текст сообщения]|[сколько раз]. Вот пример:«напомнить tenoclock в 14:10 текст Очередной тест | 4»

Так наш робот видит внутренний диалог

Для хранения заданий я выбрал базу данных sqlite3. Нагрузка у нас минимальная, разворачивается она совершенно без усилий. Теперь приступим к записи заданий в базу данных, по пути проверяя валидность даты и времени. Выглядит это вот так:

Def valid_time(time_text): try: datetime.datetime.strptime(time_text, "%H:%M") return True except ValueError: send_message(br_fake, get_self_page_id(br), "неверный формат времени") return False def valid_date(date_text): try: datetime.datetime.strptime(date_text, "%Y-%m-%d") return True except ValueError: send_message(br_fake, get_self_page_id(br), "неверный формат даты") return False def let_it_do(user, time_s, day_s, message, times): if valid_time(time_s) and valid_date(day_s): c = conn.cursor() c.execute("INSERT INTO reminder (time, date, user, message, times) VALUES (?,?,?,?,?)",(time_s, day_s, user, message, str(times))) conn.commit()

Финишная прямая

Мы уже близки к финалу! Задания наш робот получил, себе их записал. По сути, осталось только их выполнить. Тут я столкнулся с небольшой трудностью. Скрипт постоянно читает мои сообщения ко мне, поэтому, если он будет отправлять их в этот-же диалог, то в непрочитанных у меня ничего висеть не будет. А это плохо. Проблема решилась заведением фэйкового аккаунта для этого случая. Теперь если скрипт напоминает мне о чём-то, он пишет со второго аккаунта, если же нужно напомнить кому-то другому, то он пишет от моего имени, дабы людей не пугать.

Собственно вот пара функций, которые отвечают за чтение из базы и отсылку сообщений:

Def check_answers(): conn = sqlite3.connect("reminder.db") rows = get_rows(conn) for row in rows: print row c = conn.cursor() if row == "self": pass send_message(br_fake, get_self_page_id(br), row.encode("utf-8")) else: send_message(br, row, row.encode("utf-8")) if row == "1" or row == 1: c.execute("DELETE FROM reminder WHERE id = ?;", str(row)) else: time_s = (datetime.datetime.now()+datetime.timedelta(seconds=60)).strftime("%H:%M") num = int(row) - 1 c.execute("UPDATE reminder SET time = ?, times = ? WHERE id = ?",(time_s, str(num), row)) conn.commit() def send_message(br, id, message): br.open("https://vk.com/im?sel="+id) br.select_form(nr=0) br.form["message"] = message br.submit()
Ну и после отсылки сообщений скрипт удаляет запись из базы, если она не актуальна(если нужно повторить ещё сколько-то раз, то переносит время напоминания на минуту вперёд и уменьшает количество оставшихся отправок)

Подводим итоги

Так скрипт, который укладывается в 200 строк кода, решает проблему напоминаний себе и другим, используя социальную сеть вконтакте. Целиком его можно скачать отсюда . Если он вдруг кому-то нужен, то советую не собирать из кусков статьи, здесь только функциональные вещи. Некоторые вспомогательные штуки остались за кадром. Я запустил его на одном из своих vps. Пока, вроде как, удобно.


Робот указывает мне, что делать. В воскресенье! Дожили

После несложных модификаций сюда так-же можно включить любые другие функции управления системой, если скрипт запущен на удалённом компьютере. Поставить тот же торрент на скачивание, например. А так, в целом, можно реализовать веб-сервис, который будет заниматься напоминаниями для всех, кто попросит(фактически бота, как в, уже забытых сейчас, irc и icq) Но эти вещи уже не относятся к данной статье. Буду очень рад, если кому-то это было полезным.

Всем спасибо за внимание.

UPD: Не спешите разжигать факелы и точить вилы по поводу API. Я сознательно его не использую в этом скрипте из-за некоторых неудобных мест. А именно авторизации и работы с диалогами. Впрочем, в первых же комментариях я раскрыл эту тему. Цель этой статьи показать, как быстро и, практически, не применяя сторонней информации, кроме знания родного для разработчика языка, сделать жизнь несколько проще.

UPD #2: Тот же скрипт, но с использованием могучего API Вконтакте можно взять . Теперь работает без использования фэйкового аккаунта. Это несомненный плюс.

Теги: Добавить метки

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

При и в разделе “Редактировать”, вкладка “Основное” по желанию любой пользователь может заполнить графу “День рождения”, вписав туда дату. Это можно сделать не только при регистрации, но и в любое время после создания страницы.

Дни рождения пользователей ВКонтакте

После того, как пользователь указал дату своего “грустного праздника”, она автоматически сохраняется в базу данных социальной сети для последующей работы с ней. Для чего это делается? Когда наступает тот самый день, ВКонтакте оповещает всех друзей именинника, чтобы те могли поздравить его с праздником.

Где отображается день рождения пользователя ВК

ДР указывается на странице пользователя в основной информации (в том случае, если она указана в настройках). Чтобы узнать, когда человек родился, нужно просто перейти на его страницу и глянуть дату в соответствующей строке. Даже если вы не близкие друзья, а просто знакомые, человеку будет приятно, если вы запомните дату его “грустного праздника” и в этот день поздравите его.


Оповещение о дне рождения друга

Вконтакте оповещает, когда у вашего друга близится или наступает ДР. Оповещение приходит за день до праздника и в сам день рождения.

Если перейти на страницу к имениннику, то и там появится оповещение о празднике. В обоих оповещениях вам сразу предложат отправить подарок пользователю (об этом читайте в статье “Подарки ВКонтакте”).

Вы можете нажать на ссылку “Показать все подарки” и перейти в магазин. Для того, чтобы купить подарок, вы должны иметь деньги на счету аккаунта. Об этом читайте в статье “Как положить деньги на счет ВКонтакте”. Если у вас на счету есть деньги – то вы можете просто выбрать подарок, купить его и отправить имениннику.

Как изменить дату рождения ВКонтакте

Вы можете в любое время изменить или заполнить информацию о дне вашего рождения. Для этого нужно перейти в , раздел “Редактирование”, вкладка “Основное”.

Календарь ВКонтакте

Для чего нужен календарь ВКонтакте. Это своеобразный сервис, где отображаются все дни рождения ваших друзей. Да, мы помним, что оповещения о них приходят о них за день и в сам день рождения. Но иногда в начале месяца хочется просто посмотреть, кто в текущем месяце празднует свой ДР.

Информация в календаре

Давайте посмотрим, где он располагается. Нужно зайти на страницу “Друзья”, и в правом верхнем углу меню увидите иконку с изображением календаря.

  • посмотреть ближайшие дни рождения друзей и события;
  • прямо отсюда написать поздравление или отправить подарок имениннику;
  • посмотреть праздники друзей и события на весь текущий месяц, а так ДР и события в следующих месяцах (и минувшие);

Теперь вы знаете, как узнать о дне рождения друга ВКонтакте и не забудете поздравить его. А на этом у нас все..

Если вы являетесь активным участником ВКонтакте с момента его запуска, то знаете, сколько изменений социальная сеть уже претерпела. Корректировался дизайн, одни функции и разделы появлялись, другие – удалялись. Сегодня мы немного понастальгируем и вспомним о таком разделе, как Заметки ВКонтакте. Вы, наверняка, думаете, что почитать свои старые записи у вас уже не получится. Но мы расскажем, как их найти и придаться трепетным воспоминаниям.

Что такое Заметки?

Для старожилов ВК это было культовое время. Время, когда пользователи размещали текстовые публикации на своих страничках и трепетно ждали оценок от своих Друзей. Но среди читающих эту статью, наверняка, есть те, кто и не видел раздел заметок. Для них проведем небольшой ликбез.

Появление Заметок ВКонтакте пришлось на этап запуска сервиса. Раздел входил в состав стандартных на тот момент, поэтому знакомились с ним все новички социальной сети. В то время сама Стена ВК выглядела иначе, и форма публикаций была иная. Если сегодня все свои мысли вы сразу же постите на Стене, то тогда для этих целей как раз и использовались Заметки. В своей массе это были сентиментального вида тексты – прозаичные зарисовки, стихи, рассуждения и размышления и т.д.

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

В какой-то момент стало ясно, что Заметки заметно устарели. Они уже не были так интересны пользователям, обновлялись все реже. Но разработчики старались все-таки преобразить раздел, добавив в 2011 году новые функции – возможность сделать публикацию с музыкой и фото. Однако раздел от «гибели» это не спасло, и в скором времени он перестал существовать как самостоятельный.

Где Заметки сейчас?

Логичные вопросы: куда делись Заметки ВКонтакте и возможно ли вообще их отыскать во «вконтактовском» пространстве? Не беспокойтесь, все ваши электронные записки, сделанные в ВК, сохранились. Просто сам раздел руководство социальной сети решило убрать, и в основном меню сайта вы его не увидите.

Зачем же вообще было это сделано? А по той причине, что соцсеть претерпевала серьезные изменения: ее постепенно переводили на блог-формат по шаблону небезызвестного Фейсбука. Отсюда и структурные преобразования внутри уже привычного сайта.

Однако есть и другое объяснение принятому руководством ВК решению. В Службе поддержки, куда обращались многие пользователи, говорили о необходимости сменить формат Заметок с целью защиты личных данных. По словам представителей соцсети, пользователи часто использовали записки в «контакте» для того, чтобы сохранить пароли, коды и другую важную информацию. Настройки безопасности и конфиденциальности при этом зачастую давали сбой, рискуя открыть конфиденциальные данные третьим лицам. Во избежание подобных ситуаций, было решено перенести все ранее написанные Заметки на Стену, где и по сей день вы можете обнаружить свои старые публикации. А для хранения важной информации Служба поддержки предлагает создавать записи в приватной группе.

И, конечно, сейчас расскажем вам, как посмотреть те самые заветные записочки, оставленные вами на страницах «контакта». Действуем следующим образом:
1.Заходим в свой профиль ВК (Моя Страница);

2.Переходим во вкладку «Мои записи» на Стене;

3.Еще раз кликаем на «Мои записи»;

4.Переходим в раздел «Мои заметки».

Вуаля! 4 простейших шага – и вы можете пуститься по волнам своей памяти. Какое счастье, что функция заметок пропала, а они сами – нет.

Кстати, есть и альтернативный вариант перехода в давно забытый раздел. Вы можете просто забить в адресную строку браузера прямую ссылку: http://vk.com/notes. Так, наверное, будет даже проще.

Есть, конечно, и свое НО. В данном случае под ним скрывается невозможность поиска своих старых записей через приложение для Айфона или смартфонов на Андроид. Однако можно зайти в Сафари или любой другой браузер, которым вы пользуетесь, и вбить вышеупомянутую ссылку в адресную строку.

Сложно сказать, насколько верным было решение руководства удалить заметки вконтакте. Но сегодня о них уже мало кто вспоминает, и новый формат сайта кажется вполне гармоничным и понятным. Ну а ностальгии всегда можно предаться, воспользовавшись методами, о которых мы вам рассказали выше.

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

Не менее приятно продемонстрировать людям свое искреннее отношение, поздравив их с праздником. Однако нынешний темп жизни зачастую не оставляет шанса запомнить даже важные годовщины.

«ВКонтакте» дает возможность воспользоваться соответствующей системой уведомлений и напоминаний. Узнать, когда родился человек не сложно. Услуга доступна всем владельцам аккаунтов.

Каждый может отправить поздравление сообщением, подготовиться к знаменательному событию, заранее выбрать подарок, пополнить счет голосами «В Контакте ».

Выписывать памятные даты в блокноты крайне неудобно. Однако этого не понадобиться, поскольку онлайн-сервис предусматривает функцию «Календарь», детальнее о которой мы расскажем.

Новый интерфейс ВК отличается от предыдущего. В том числе касательно поиска, просмотра дат рождения. Многих смущает отсутствие справа окна, где ранее были указаны именинники текущего дня.

Однако сейчас чтобы узнать, как посмотреть день рождения друга в контакте, не нужно открывать много приложений, заходить к каждому на страницу. Достаточно воспользоваться размещенным на сайте календарем. Здесь вы без труда найдете пользователей, которые указали в профиле свои данные.

Друзья не останутся без внимания

Ознакомиться с нужной информацией быстро можно, следуя простой инструкции:

  1. авторизуйтесь в личном кабинете ВК , введя Логин, Пароль;
  2. зайдите в размещенный на панели слева пункт «Друзья» (вкладка «Все друзья»);
  3. в правом верхнем углу нажмите на графическое изображение «Календарь»;
  4. на открывшейся вкладке «Ближайшие события» вверху размещены те, кто отпразднует именины в течение следующих суток (тут предусмотрена функция поздравления этих людей сообщением, виртуальным подарком);
  5. далее список сменяется календарным изображением текущего месяца, на датах которого расположены фотографии пользователей;
  6. подведите мышь на аватарку, чтобы увидеть имя человека, узнать, сколько ему исполняется лет;
  7. чтобы просмотреть именинников других месяцев, достаточно кликнуть влево-вправо стрелки вверху табличного изображения (уже прошедшие даты выглядят более блеклыми по сравнению с еще не наступившими).

Следует учесть, что не все указывают свои данные. Некоторые скрывают доступ к ним в настройках. Если вам уже известна такая информация, ее можно самому внести в календарь как напоминание.

Поздравить друга можно такими способами:

  • отправить сообщение через соответствующий пункт меню;
  • оставить поздравление, красивую открытку на стене.
  • откройте общие настройки и убедитесь, что правильно указали нужные данные;
  • проверьте настройку приватности, отметив среди тех, кто имеет доступ к информации на странице, всех пользователей или только друзей.

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