Where does Skype store the avatar pictures of my contacts?

I'd like to know where does Skype running on Windows 7 store the profile pictures of my contacts and how can I access them on my PC?


Solution 1:

You can see it online if the user’s profile is public.

This link will take you to the Echo user’s profile avatar: Echo Avatar

The link is: http://api.skype.com/users/echo/profile/avatar

To get a higher resolution picture use the size parameter.

  • http://api.skype.com/users/echo/profile/avatar?size=s
  • http://api.skype.com/users/echo/profile/avatar?size=m
  • http://api.skype.com/users/echo/profile/avatar?size=l

Replace echo in the above URLs with your contact’s Skype ID

Solution 2:

Before you start

SJG's answer is an easy solution. Continue only if you really want to extract big and/or small avatars from your skype client.

Avatars can be found in main.db database, Contacts table, avatar_image column, or inside profile_attachments column, as noted in this answer

Where is main.db?

Here:

%APPDATA%\Skype\your_skype_login\main.db

you can paste %APPDATA%\Skype in windows start menu search bar and press enter. (What is “%AppData%”? and What are environment variables?)

If you are going to mess with skype database, copy both main.db and main.db-journal somewhere else. Do not open (and edit) main.db directly if unsure. Do not ignore this warning.

Luckily, you don't have to exit skype to copy it's database.

How do I open it?

main.db is an SQLite database.

Open database file in DB Browser for SQLite

You can open SQLite database with SQLite studio which is cool and worth trying, but this time use DB Browser for SQLite because it can easily export binary column to file.

Navigate to Browse data tab, Table Contacts, column avatar_image (21th currently) is the blob you are looking at. Double-click it, hit "Export" and save to a .jpg file.

I had to remove null-byte at the beginning of extracted file. You can, of course, do it with HEX-editor, but you better delete "NUL" at the beginning with Notepad++ which will not corrupt binary file like any other text editor.

And viola, this is the .jpg avatar you are looking at.

Where is a bigger avatar? / avatar_image is empty

Check inside profile_attachments column.

After saving, delete everything from the beginning of the file to the

[NUL] ÿØÿà [NUL] [DLE] JFIF

Including the first [NUL], so the file will begin with

ÿØÿà [NUL] [DLE] JFIF

Note that ÿØÿà is a Windows-1252 representation of binary data. This is strongly depends on your windows locale, so you better look for JFIF part

All the information about formats is kinjdly provided by Guillaume Brunerie's answer to "Where does Skype save my contact's avatars in Linux?" so upvote his answer