Как сохранить контакты с яндекс почты в excel
Внимание, данный сервис стал доступен для всех! Мысленно пожелайте автору здоровья и творческих успехов! Сделано для удобства людей, а не для извлечения прибыли.
1. На Яндекс почте выбираем Контакты->Ещё->Сохранить контакты в файл. Во всплывающем окне выбираем «vCard», «Русский». Нажимаем кнопку «Сохранить».
2. Должен скачаться файл «abook.vcf».
3. Загружаем файл на сайт, нажимаем кнопку «Обзор» или «Browse» (На разных системах по-разному). Скачиваем на свой ПК сгенерированный файл.
4. Открываем программу корпоративной почты Microsoft Outlook 2016. Выбираем «Файл»->»Открыть и экспортировать»->»Импорт и экспорт»->»Импорт из другой программы или файла». Нажимаем кнопку «Далее».
5. Выбираем «Значения, разделенные запятыми (Windows)».
6. Выбираем файл для импорта (который только что скачали, вида «много цифр и букв.csv»), нажимаем на кнопку «Обзор», Далее «Local Disk (C. » и выбираем сам файл. Он скорее всего будет расположен в папке «Пользователи»->»User»->»Загрузки»->»829743191fe34c10cf5de8635.csv».
7. Выбираем папку назначения — «Контакты», нажимаем кнопку «Далее», потом «Готово».
8. Проверяем как импортировались контакты. Если не усраивает как они отображаются, то щелкаем 2 раза быстро левой кнопкой мыши по названию контакта (имя контакта на сеом фоне) и из выпадающего списка «Хранить как» выбираем желаемое отображение контакта.
Данный сервис преобразует Abook.csv экспортированный из Яндекс почты в CSV файл, где объедененны поля Имя, Фамилия, Отчество и оставлен только E-mail. Другие поля не переносятся.
Разработка ИП Дегтярёв Н.В., последее обновление в 20:54:58 03.05.2023 г.
Как сохранить контакты с яндекс почты в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Как выгрузить е-маилы в ексель-файл массово в Яндекс почте?
Есть 100 сообщений, это лиды с е-маил, именем и номером телефона. Нужно составить из них базы и вывести в Ексель.
Как это сделать массово? Чтобы по одному письму не копировать.
- Вопрос задан более трёх лет назад
- 3075 просмотров
Комментировать
Решения вопроса 2

Ищу работу. Контакты в профиле.
Переслать все email в гугл почту и воспользоваться Google Apps Script
https://developers.google.com/apps-script/referenc.
+
https://developers.google.com/apps-script/referenc.
но потребуются минимальные навыки js разработчика.
Плюс данного подхода — можно будет автоматом пополнять табличку при поступлении новых писем.
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать

у админа три руки
Загрузить в любого почтового клиента, хранящего письма в mbox или умеющего экспортировать в формат mbox (насколько помню, все умеют). Mbox — простой текст, с ним можно вытворять что угодно, писать скрипты для выдёргивания любых данных. Это можно делать на любом языке программирования, на котором вы умеете.
Парсинг контактов адресной книги Яндекс.почты в CSV на Python
Как-то в процессе работы возник вопрос как на корпоративном домене в Яндексе выгрузить все контакты организации из адресной книги Яндекс.почты в файл .csv или .xls, чтобы было красиво и потом удобно работать с этими данными в MS Excel.
Оказывается, что стандартными средствами Яндекс.почты можно выгрузить только в Vcard формат, что мне совсем не подходит. Нужно потом его как-то конвертировать сторонними средствами. Такие попадались на просторах интернета, что совсем неудобно.
На помощь пришел Python.
C помощью библиотеки BeautifulSoup очень удобно и быстро парсить html и вынимать всю нужную нам информацию.
Для парсинга нам понадобится Python 3, библиотека BeautifulSoup и браузер с инспектором кода.
Для начала импортируем необходимые для работы библиотеки.
from bs4 import BeautifulSoup as BS import re import csv
В результате анализа кода страницы выявлено, что данные которые нам нужны спрятаны в тегах span с классами:

mail-AbookEntry-Contact — содержит имя контакта
mail-AbookEntry-Emails — содержит список Email-ов
Сохраняем нашу веб страницу на диск в папку со скриптом, я назвал ее просто “contacts.html”. Если в адресной книге много контактов, то перед сохранением не забываем нажать “Показать все контакты” в конце страницы.

Открываем сохраненную страницу и получаем весь код внутри тегов span, сохраняя их в три списка:
with open('contacts.html', 'r', encoding='utf-8') as f: html_str = f.read() res = BS(html_str, features="lxml") #список с именами l_contacts = res.findAll('span', class_='mail-AbookEntry-Contact') #список с Emailами l_emails = res.findAll('span', class_='mail-AbookEntry-Emails') #список с телефонами l_phones = res.findAll('span', class_='mail-AbookEntry-Phones') #Объединяем в один большой список с которым и будем дальше работать l_res = list(zip(l_contacts, l_emails, l_phones))
Каждый элемент списка l_res это список с кусочками кода с нашей страницы, соответствующий строке с контактом.

Пробегаем циклом по нашему списку l_res:
for i in l_res: l_row_contact=[] #список, в который будут записываться данные о контакте (имя, емейлы, телефон) для записи в файл .csv
Так как i элемент это тоже список, содержащий группы, показанные выше на рисунке, то проходим по всем элементам этого списка.
for j in i:
Может быть такое, что у контакта несколько Email-ов. В коде они хранятся в списке ul с классом _nb-popup-menu, а каждый email обернут в теги li и a.

#Если существует список дополнительных емейлов у контакта, то извлекаем емейлы и сохраняем в список l_a if j.find('ul', class_='_nb-popup-menu') is not None:
Для начала находим и получаем содержимое тегов li:
l_li = j.findAll('li', class_='_nb-popup-line') l_a=[]
Пробегаем по каждому полученному li и извлекаем текст Email, обернутый в тег a с классом _nb-popup-link
for k in l_li: if k.find('a', class_='_nb-popup-link') is not None: l_a.append(k.find('a', class_='_nb-popup-link').text)
Добавляем к результирующему списку с данными о контакте строку с разделителями \r\n, чтобы в ячейке был перенос, если несколько email-ов.
l_row_contact.append('\r\n'.join(l_a)) #если доп списка нет, то просто извлекаем все данные по контакту elif j.find('span', class_='mail-ui-Overflower') is not None: l_row_contact.append(j.find('span', class_='mail-ui-Overflower').text)
В результате одного прохода мы получаем список со строками следующего формата:
[ ‘Имя контакта’, ‘Email_1\r\nEmail_2…Email_k’, ‘Телефон’ ]
#записываем строку с данными контакта в файл csv with open('contacts.csv','a') as f: file_writer = csv.writer(f, delimiter = ";", lineterminator="\r") file_writer.writerow(['Имя', 'Emails', 'Телефон']) file_writer.writerow(l_row_contact)
Я использую разделитель ‘;’ только, чтобы при открытии было красиво в Excel.
И так проходим по всему списку, дописывая в файл CSV строки с данными о контактах.
Если использовать разделитель ‘,’ и убрать дополнительные Email-ы в получившемся файле, то можно импортировать всё в Outlook.
Код проекта вы можете посмотреть и скачать на GitHub.