Для начала понадобится OpenOffice Calc, Excel или любые электронные таблицы. Открываем в браузере ваш диалог Вконтакте. Пролистываем его весь до начала. Нажимаем комбинацию клавиш Ctrl+A (выделить всё), а потом Сtrl+C (скопировать всё). Этот момент как раз виден на скриншоте выше. Не пугайтесь, что копируем всю страницу - мусор уберём легко.

Внимание! Если диалог достаточно большой, то вставлять лучше сначала в Блокнот. Потом копируем содержимое Блокнота в электронную таблицу. Если копировать большой диалог сразу в Excel, то тот зависнет очень надолго, если не на совсем.

Запускаем OpenOffice Calc или Excel. Вставляем скопированный диалог с мусором в электронную таблицу. Ниже виден этот процесс.

Теперь начинаем чистить таблицу. Удаляем вехние строки, переносим столбец с датой влево, а столбец с именами сдвигаем влево до того момента, пока вас не устроит расположение имён над текстом сообщений. После этого у меня оказался пустой столбец «С», который я удалил. Тут всё можете делать на свой вкус, как вам будет удобно читать.

Вот что получилось у меня.

Уже неплохо. Ничего лишнего. Теперь можно сохранить в любом формате.

Почему делать лучше в таблице, а не в Word или OpenOffice Writer? Потому, что форматирование в таблице не ползёт. Если вы сохраните (через копирование и вставку в блокнот) потом этот диалог как простой текстовый файл, то форматирование останется в виде удобного для чтения диалога.

Вот, что получилось на выходе.

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

Удачи, а я пошёл писать пост про самый экономный шоппинг.

Сохраните на память, делитесь с друзьями и оставляйте комментарии.

(4 оценок, среднее: 5,00 из 5) Загрузка...

Http://lassimarket.ru/2014/08/kak-soxranit-dialog-vkontakte/http://lassimarket.ru/wp-content/uploads/2014/08/kak-sohranit-dialog-vkontakte2.jpghttp://lassimarket.ru/wp-content/uploads/2014/08/kak-sohranit-dialog-vkontakte2.jpg2017-05-14T23:46:04+00:00Антон ТретьякИнтернетДорогие друзья! Сегодняшний пост хочу посвятить такой теме, как сохранение переписки из социальной сети Вконтакте. Понадобилось мне тут несколько диалогов сохранить, а встроенного сервиса у Контакта нет. Есть приложения типа VkOpt для сохранения историй переписки, но мы попробуем иначе, без использования сторонних приложений и сервисов, которым нужно ещё пароль от...Антон ТретьякАнтон Третьяк - обзоры, инструкции, лайфхаки

lassimarket.ru

Как Вконтакте сохранить историю сообщений: инструкция

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

Способы скопировать переписку

Если ваш диалог с пользователем состоит из десятка сообщений, которые вы хотите сохранить к себе на ПК, то заморачиваться не стоит. Выделите все при помощи мыши, нажмите сочетание клавиш Ctrl+C. Затем откройте блокнот или документ Word и нажмите Ctrl+V. Текст появится в документе.

Также вместо Word можно использовать OpenOffice Calc или Excel. Дело в том, что после копирования и вставки сохранится не только диалог с пользователем, но и ненужная информация. Избавиться от мусора проще в таблице, нежели в текстовом документе. Но форматирование для чтения диалога более удобное именно в текстовом файле типа блокнота.

Но если нужно скачать историю сообщений со всеми пользователями, то копированием вручную тут не справиться. На помощь придет приложение VkOpt.

Это приложение разработано для того, чтобы пользователи Вконтакте имели доступ к расширенным функциям.

Благодаря этому приложению можно управлять своими сообщениями. В программе существуют два списка сообщений:

Эти функции можно отключать или включать.

Кроме этих функций есть возможность посмотреть историю и скачать ее. Кнопка сохранения находится в самой истории переписки.

socya.ru

скопировать переписку из контакта ?

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

useful-faq.livejournal.com

Как сохранить диалог Вконтакте

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

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

vkhow.ru

Как сохранить важную переписку ВКонтакте (инструкция)

Переписываясь с друзьями и коллегами во ВКонтакте у многих возникает необходимость сохранить какие-то данные переписки (текстовые либо фото), что называется «на виду», дабы не искать их потом среди тысяч строк.

К счастью, такая возможность имеется!

Необходимо лишь выделить нужное сообщение, нажать на кнопку «Переслать» и отправить прикрепленную информацию самому себе!

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

Благодаря данному трюку важная информация всегда окажется на виду! Найти ее можно будет зайдя в «Сообщения» и выбрав в диалогах самого себя.Пользуйтесь!

Вконтакте

Одноклассники

2014-11-24 2017-02-21 | DjDiplomat | нет комментариев | вк

Всем привет!

Вчера мне понадобилось скачать все фотографии из диалога с одним человеком в vk.com. Фотографий было больше 1000 штук. Понятное дело, что ручками это все делать было бы утомительно и… Стыдно. Не для того программированием занимаюсь, чтобы такую грязную работу делать не автоматизированно. Поэтому было решено написать скрипт.

В качестве языка был выбран Python. Его удобно использовать для консоли, он довольно быстрый, есть модуль urllib, позволяющий «одним движением» скачивать картинки по ссылке. Но главная причина - это то, что я начал изучать его недавно. Решил дополнительно попрактиковаться.

Сам скрипт получился небольшой, но было бы интересно описать процесс создания. Буду стараться писать побольше комментариев в коде, чтобы те, кто не знает python, тоже смогли понять процесс. А от знатоков очень приветствуются советы и указания. Итак, приступим.

«Вконтакте» не предоставляет API конкретно для скачивания материалов из беседы, поэтому самое долгое время заняло изучение того, как устроена система подгрузки картинок из диалога в vk.com. Все картинки лежат у них, понятное дело, на сервере, и доступ к ним имеет любой, у кого есть ссылка на эту картинку. Таким образом, чтобы скачать все фотографии из диалога, нам надо получить все ссылки на картинки. Тыкаясь туда-сюда, было выяснено, что при нажатии на «Действия -> показать материалы из беседы» отправляется POST запрос на vk.com/wkview.php . Запрос содержит параметры:

  • act:show
  • loc:im
  • w:history_photo
В этом запросе dialog_id - это значение параметра «sel» в адресной строке, когда мы заходим в диалог.
Выполнив такой запрос, мы получим в ответ что-то вроде вот этого:

16515wkview.js,wkview.css,page.js,page.css,page_help.css065900 Фотографии в переписке с ЮЗЕР_НЭЙМ Фотографии Видеозаписи Аудиозаписи Документы ... (и еще много ссылок с картинками) Список пуст. Показать еще {"count":"23318","offset":3330,"type":"history","commonClass":"wk_history_content wk_history_photo_content","wkRaw":"history_photo","canEdit":false,"lang":}WkView.historyInit();
Здесь я заменил ссылки на , так как уже говорил, что картинки vk лежат в открытом доступе и получить их может любой, кто знает ссылку.

Из всего этого нам интересны только ссылки, которые находятся внутри , а так же json на конце. Я был не до конца честен, говоря, что POST запрос принимает 4 параметра. Точнее, он принимает, но если его выполнить нам выдадутся только первые несколько фотографий. Так как vk.com имеет подгрузку контента по мере прокручивания страницы, то существует параметр offset, который отвечает за то, какую часть из всего множества фотографий нам подгрузить. В итоге параметры запроса выглядят вот так:

  • act:show
  • loc:im
  • w:history_photo
  • offset: offset
  • part: 1
Из всех параметров меняться будет меняться только offset. Его мы вытаскивает из того самого json"a на конце ответа. Каждый раз при выполнении запроса offset внутри json"а будет увеличиваться, показывая, какое «смещение» надо сделать в следующий раз. Таким образом, нам надо будет делать запросы до тех пор, пока у нас offset будет меньше count.

Кстати, а что насчет выполнения запросов? Как нам получить доступ к своей странице? Было выяснено, что доступ к странице может получить тот, у кого есть cookie под названием remixsid. Таким образом нам надо подставить эту куку в функцию, которая выполняет запрос и все получится. Безопасно? Не совсем, швыряться куками - это не есть хорошо, но я не нашел другого варианта. Если кто-то знает, напишите пожалуйста.

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

# coding=utf-8 import requests # для выполнения запросов import re # для парсинга по регулярным выражениям import sys # для обработки аргументов командной строки import os # для создания папок с фотографиями import urllib # для скачивания картинок import json # для обработки json # argv = remixsid_cookie # argv = dialog_id # argv = person_name
Аргументы у нас будут передаваться через терминал (remixsid, dialog_id и название папки):

Remixsid_cookie = sys.argv # Словарь запроса RequestData = { "act": "show", "al": 1, "loc":"im", "w": "history" + sys.argv + "_photo", "offset" : 0, "part" : 1 } request_href = "http://vk.com/wkview.php" # Установим первоначальные offset и count. Count изменится при первом запросе bound = {"count" : 10000, "offset" : 0}
Создадим отдельную папку для фотографий:

Try: os.mkdir("drop_" + sys.argv) # Пытаемся создать папку except OSError: print "Проблемы с созданием папки "drop_" + sys.argv + """ if(os.path.exists("drop_" + sys.argv)): os.chdir("drop_" + sys.argv) # Переходим в эту папку else: print "Не удалось создать папку\n" exit()
Отлично, начинаем выполнение запросов:

Test = open("links", "w") while(bound["offset"] < bound["count"]): RequestData["offset"] = bound["offset"] content = requests.post(request_href, cookies={"remixsid": remixsid_cookie}, params=RequestData).text # Этой командой мы выполняем post запрос с параметрами params и передавая куки. .text возвращает ответ запроса в виде текста. Все просто.
Теперь начинаем парсинг ответа. Извлекаем все через регулярные выражения. Сначала извлекаем json и устанавливаем следующий offset:

#ищем первое совпадение по регулярному выражению json_data_offset = re.compile("\{"count":.+?,"offset":.+?\}").search(content) # .search возвращает специальный объект. У него есть метод span(), который возвращает кортеж с индексами начала и конца найденной подстроки bound = json.loads(content) # декодируем json bound["count"] = int(bound["count"]) #count отдается в виде строки bound["offset"] = int(bound["offset"]) # на случай, если в будущем тоже будет отдаваться в виде строки. В принципе это написано ради "на всякий случай"
Теперь надо извлечь все ссылки из тегов src. Действуем тем же способом, но используем метод findall, который возвращает массив всех строк, которые совпали с регуляркой:

Links = re.compile("src="http://.+?"").findall(content)
Теперь запишем все в файл:

For st in links: test.write(st + "\n") # пишем то, что внутри src="..." test.close()
С этим все. Осталось только пройтись по файлу и скачать все по ссылкам. Это делается с помощью модуля urllib, вот так:

Test = open("links", "r") file_num = 0 for href in test: # берем строку из файла которая является ссылкой, и так до конца файла urllib.urlretrieve(href, str(file_num)) # в качестве имени файла просто используем его порядковый номер file_num += 1 print "Скачано " + str(file_num) + " файлов\n" test.close()
Готово! Но, так как использовать это мы будем из командной строки, давайте еще напишем небольшую документацию (--help), а так же вывод об ошибке, если аргументов командной строки меньше, чем нужно. Добавим в начало:

If(sys.argv == "--help"): print """ Usage: python main.py is a string parameter "sel" in address line which you see when open a dialog """ exit() else: if(len(sys.argv) < 4): print """ Invalid number of arguments. Use parameter --help to know more """ exit()
Вот и все, вроде. Конечно, можно еще многое добавить: проверку на выполнен запрос или нет, проверку на корректность входящих данных, автоматическое вытаскивание (например, первых 10), но мне просто хотелось описать основные моменты. В итоге те самые 1000 фотографий, которые мне были нужны, были скачаны. Заняло это где-то 2 минуты. Никаких ограничений на запросы, как так понял, vk.com не ставит, хотя могу предположить, что на такой маленький для него трафик он даже не реагирует.

Весь рабочий код целиком лежит на

Ваш аккаунт хранит ваши приложения, музыку, e-mail, книги, документы, кредитные карты и прочий стаф. Настало время защитить его чем-то больше, нежели привычным всем паролем. Если вы следите за новостями мира технологий, то должны быть в курсе о ситуации с Метом Хонаном, который подвергся атаке хакеров, приведшей к уничтожению его iCloud , Twitter и Google аккаунтов и блокированию нескольких устройств. В случае с Хонаном атака была возможна благодаря скомпрометированным личным данным (находящимся в открытом доступе) и ошибкам со стороны служб поддержки Amazon и Apple , а не контактом с вредоносным ПО. Основной причиной того, что хакеры атаковали не только аккаунты и устройства, но и и Google стаф, был тот факт, что Хонан не пользовался двухступенчатой авторизацией. Истории, подобные этой, всегда наталкивают на мысли о мерах предосторожности, и наиболее эффективным в этой ситуации будет использование двухступенчатой авторизации . Внутри видео презентация и подробное описание включения и настройки двухступенчатой авторизации на вашем Google аккаунте!

Что такое двухступенчатая авторизация?

Двухступенчатая авторизация дает дополнительный уровень защиты, запрашивая у вас шестизначный код, сгенерированный Google и отправленный на ваш телефон в момент входа в аккаунт. Это означает, что если ваш пароль взломали, то аккаунт остается нетронутым. Для дальнейшего проникновения необходим будет ваш мобильный. Мы можете получать шестизначный код через СМС или, если вы пользователь Android , BlackBerry , iPhone , из приложения Google Authenticator , которое вы можете использовать для моментального генерирования кода. Эти приложения работают, получая доступ к вашему Google аккаунту и сканируя секретный баркод.

А как быть с Android девайсами и приложениями?

Иногда приложение или девайс, использующие ваш Google аккаунт, не запрашивают код, или это непрактично/нежелательно. Рассмотрим пример с Android устройствами. Вход с таких устройств с включенной двухступенчатой авторизацией приводит к использованию пароля для конкретного приложения. Такой пароль дает возможность доступа устройству или приложению к вашим Google аккаунтам. Получит его можете здесь: accounts.google.com > "Security" > "Authorizing applications and sites". Это займет немного времени и сил, но иначе никак. Например, вы являетесь обладателем смартфона Galaxy Nexus и планшета Nexus 7 . Для каждого из устройств вы создаете по такому паролю и единоразово вводите в настройках каждого из устройств. Если же вам надо прекратить доступ к Google аккаунтам по какой-либо причине, то вы просто нажимаете "revoke" рядом с названием устройства. А так как пароль этот шестнадцатизначный и может быть использован только для одного устройства или приложения, то это действительно весьма безопасно.

Непредвиденные обстоятельства

Также вы получаете дополнительные коды, каждый из которых поможет войти в аккаунт (использоваться может только один раз);

- Google Authenticator не нуждается в интернет доступе для создания кода.

Промах служб поддержки Amazon и Apple (вместе с отсутствием двухшаговой безопасности у iCloud ) привел к тому, что iPad , iPhone и Macbook Мета вышли из строя. Однако, двухступенчатая авторизация могла бы спасти его Google и связанный с ним Twitter аккаунты. Предположим, что вы не пользуетесь данным типом защиты. Если вы забыли пароли и хотите восстановить его, то для этого необходимо будет совершить несколько действий, одним из которых будет получение письма на почту, адрес которой вы указали ранее. Эта процедура является лишь частично скрытой, что позволило хакерам взломать аккаунт Мета. В этом и кроется очень большой промах службы поддержки Amazon и Apple . Если бы пользователь включил двухступенчатую авторизацию, то хакеры, при попытке восстановления пароля, увидели бы следующее сообщение:

Журналисты, а особенно задействованные в сфере технологий, не являются примером обычных пользователей различных аккаунтов, если ваше имя не облетело все просторы интернета, то и вероятность стать жертвой хакеров значительно меньше. Тем не менее, это очень простая и эффективная мера предосторожности для всех. Если вы серьезно связаны с экосистемой Google , то лучше перестраховаться. В противном случае взломщики могут получить доступ к вашей виртуальной жизни, и не только контролировать, а и лишить вас всех приобретений (например, если вы продвинутый Android пользователь и собрали большое количество стафа).

И так, чтобы избежать незапланированных неудобств, пожалуйста, включите двухступенчатую авторизацию Google аккаунта.

Android от А до Я: Двухступенчатая авторизация Google аккаунта:
рейтинг 80 из 80 на основе 80 оценок.
Всего 80 отзывов.

Знали ли Вы, что используя Google , можно сделать на своем сайте регистрацию на сайте в один клик? Каждый, у кого есть аккаунт в Google, может просто нажать на кнопку, а скрипт автоматически загрузит в приложение e-mail, имя и фотографию.
Используя этот вариант входа/регистрации, вы создадите удобство для пользователей. Вот некоторые из преимуществ:

Не нужно делать проверку формы входа, и вообще создавать форму;

Нет необходимости в функции «Забыл пароль»;

E-Mail адресы уже подтверждены Google, поэтому вам не нужно высылать подтверждение.

Конечно, это будет работать, только если у человека есть аккаунт Google, поэтому имеет смысл сделать что-то в дополнение к этой системе регистрации.

Настройка приложения

Первый шаг заключается в создании приложения через консоль Google API . Следуйте инструкциям для получения дополнительной информации. После завершения процесса, разместить полученные ключи в setup.php.
Запуск кода из schema.sql (вы можете найти его в архиве скачать) в PhpMyAdmin или ином административном MySQL инструменте. Это создаст glogin_users таблицу в базе данных, которая будет использоваться для хранения информации об учетных записях пользователей вашего приложения. После этого, напишите свои данные подключения к базе данных в setup.php .

PHP

Для чтения и вставки в базу данных используется библиотека Idiorm . Будем создавать следующие PHP страницы:

index.php – главный файл приложения;

setup.php – соединение с базой данных и ключи выданные Google;

Папки библиотеки Idiorm, PHP библиотеки Google.

Давайте взглянем на код первой части index.php :

200?"200px":""+(this.scrollHeight+5)+"px");">require "setup.php";

// Create a new Google API client
$client = new apiClient();
//$client->setApplicationName("Tutorialzine");

// Configure it
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setDeveloperKey($api_key);
$client->setRedirectUri($redirect_url);
$client->setApprovalPrompt(false);
$oauth2 = new apiOauth2Service($client);

// The code parameter signifies that this is
// a redirect from google, bearing a temporary code
if (isset($_GET["code"])) {

// This method will obtain the actuall access token from Google,
// so we can request user info
$client->authenticate();

// Get the user data
$info = $oauth2->userinfo->get();

// Find this person in the database
$person = ORM::for_table("glogin_users")->where("email", $info["email"])->find_one();

If(!$person){
// No such person was found. Register!

$person = ORM::for_table("glogin_users")->create();

// Set the properties that are to be inserted in the db
$person->email = $info["email"];
$person->name = $info["name"];

If(isset($info["picture"])){
// If the user has set a public google account photo
$person->photo = $info["picture"];
}
else{
// otherwise use the default
$person->photo = "assets/img/default_avatar.jpg";
}

// insert the record to the database
$person->save();
}

// Save the user id to the session
$_SESSION["user_id"] = $person->id();

// Redirect to the base demo URL
header("Location: $redirect_url");
exit;
}

// Handle logout
if (isset($_GET["logout"])) {
unset($_SESSION["user_id"]);
}

$person = null;
if(isset($_SESSION["user_id"])){
// Fetch the person from the database
$person = ORM::for_table("glogin_users")->find_one($_SESSION["user_id"]);
}



HTML

Код HTML занимает нижнюю половину страницы index.php . После авторизации через Google сюда мы сможем выводить данные о пользователе. Сама страница является стандартным документом HTML5.


200?"200px":""+(this.scrollHeight+5)+"px");">



Google Powered Login Form | Tutorialzine Demo






Login Form