StaDi
@StaDi
Курьер в it отделе

Как спарсить и разборать сообщения из skype чата?

Котаны привет! Помогите решить задачу: как лучше спарсить и разбить текст из скайпа?
Есть групповой скайповский чат, хотелось бы скормить историю чата некой программе(сайту), а она уже красиво аккуратно разложила по полочкам переписку на дату, время, ник и сообщение, если в сообщении есть смайлы, то заменить их смайлами, если есть фотки, то вставить их и тому подобная работа с ссылками.

Начал решать вопрос при помощи регулярки, но возникли проблемы:
1. Если в сообщении есть новые строчки, регулярка их игнорирует
2. Иногда в ссылку добавляется текст, не видит 2 ссылки
и тд

Пример переписки
[11.01.2014 20:00:34] pr<stl3n>ya: Не завидуйте, подружки, 
Мой Ванюша - не орел! 
 День и ночь поет частушки.

[14.08.2013 21:49:14] yxa4yxa4: (bandit)
[14.08.2013 17:00:15] Kiri1l: http://giant.gfycat.com/SleepyThisGreendarnerdragonfly.gif
вот тебе слоник
[12:11:34] Сергей: какая долгая гифка, я ж устал смотреть
[15:23:45] Mike: [15:13] Сергей: 

<<< Сообщение которое написал Сергей


Регулярка имеет вид
(\[(([0-9]{1,2})\:([0-9]{2})\:([0-9]{2,4})|([0-9]{1,2})\.([0-9]{2})\.([0-9]{2,4})\s([0-9]{1,2})\:([0-9]{2})\:([0-9]{2,4}))\]\s(.*):\s(.*))

Ссылка на онлайн редактор регулярок

ps может стоит как то по другому разбирать сообщения?
Заранее спасибо всем за советы!
  • Вопрос задан
  • 2578 просмотров
Пригласить эксперта
Ответы на вопрос 1
@DrunkenMaster
Скайп хранит историю в SQLite базе. Лучше всего взять файл данных и работать с ним.

Кое-какие примеры кода:
https://github.com/Bishop/SkypeHistory
https://github.com/mrjazz/SkypeHistory
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы