Export kontaktů ze služby Email.cz (Seznam.cz)
Známý se na mě onehdá obrátil s dotazem, jestli nevím, jak ze seznamácké e-mailové schránky Email.cz exportovat kontakty. Nová verze služby nasazená v roce 2013 bohužel takto triviální operaci neumožňuje, Seznam.cz se tedy tímto stal jedním z nejuzavřenějších poskytovatelů e-mailu – valná většina ostatních webmailů a snad bez výjimky všechny poštovní klienty export a import kontaktů podporují. Kompletní export včetně podrobností o kontaktech bohužel není možné provést, snadno lze ale získat alespoň seznam jmen a adres.
Postup je jednoduchý:
- Přetáhněte odkaz export kontaktů na panel záložek ve svém prohlížeči.
- Přejděte do své e-mailové schránky.
- Klikněte na tlačítko Nová zpráva.
- Klikněte na tlačítko Vybrat z adresáře (vlevo v poli Komu:).
- Klikněte na záložku export kontaktů.
- Voilà – zobrazí se seznam kontaktů se jmény a adresami oddělými středníkem. Tento seznam uložte do souboru s příponou CSV a importujte do libovolné e-mailové služby nebo klienta.
Zdrojový kód
javascript:(function(){
var out = "";
var arr = document.getElementsByTagName("div");
for (var i = 0; i < arr.length; i++) {
if (arr[i].className == "wm-abook-popup-box picker") {
var rows = arr[i].firstChild.rows;
for (var j = 0; j < rows.length; j++) {
var cells = rows[j].cells;
if (cells.length > 1) {
if (cells[1].innerHTML == "") out += ";" + cells[0].innerHTML.replace(/(<([^>]+)>)/ig,"") + "<br>";
else out += cells[0].innerHTML.replace(/(<([^>]+)>)/ig,"") + ";" + cells[1].innerHTML.replace(/(<([^>]+)>)/ig,"") + "<br>";
}
}
return out;
}
}
alert("Go to email.seznam.cz, click Nova zprava and click the icon in Komu: field");
})()
Verze pro spuštění pomocí konzole prohlížeče
console.log('"jméno";"e-mail"');
var arr = document.getElementsByTagName("div");
for (var i = 0; i < arr.length; i++) {
if (arr[i].className == "wm-abook-popup-box picker") {
var rows = arr[i].firstChild.rows;
for (var j = 0; j < rows.length; j++) {
var cells = rows[j].cells;
if (cells.length > 1) {
if (cells[1].innerHTML == "") {
name = '""';
addr = '"' + cells[0].innerHTML.replace(/(<([^>]+)>)/ig,"").trim() + '"';
} else {
name = '"' + cells[0].innerHTML.replace(/(<([^>]+)>)/ig,"").trim() + '"';
addr = '"' + cells[1].innerHTML.replace(/(<([^>]+)>)/ig,"").trim() + '"';
}
console.log(name + ';' + addr);
}
}
}
}



