Проблемы с кодировкой эмодзи в Твиттере с твитером
Я пытаюсь найти способ найти смайлики в твиттере и связать их с таблицей юникода, которую можно найти на unicode.org, но мне сложно их идентифицировать из-за того, что я считаю проблемами кодирования или просто моим недопониманием в Эта тема. Короче говоря, я сделал «библиотеку» смайликов из таблицы, найденной вhttp://www.unicode.org/emoji/charts/full-emoji-list.html который содержит заголовок и кодовую точку (код) смайликов. Я пересмотрел это в R с библиотекойrvest.
Проблема возникает, когда я получаю информацию из твиттера с помощью twitteR API в R. Поскольку коды для смайликов совсем не похожи на те, что приведены в этой таблице.
Давайте рассмотрим пример с эмодзи 100 (сто очков) красного значка. Это число 1468 в ранее связанной таблице, и его кодовый код:
U+1F4AF
Теперь, когда я беру его из твиттера, в первую очередь это показано в классе статуса, который встроен в API для работы с твитами.
\xed��\xed��
Затем, как только я преобразую его в массив данных, я делаю это также с помощью встроенной функции из Twitter API. Например:
tweet$toDataFrame()
Emoji становится таким:
<ed><U+00A0><U+00BD><ed><U+00B2><U+00AF>
Я пытался преобразовать его с помощью функцииIconv в R со следующим кодом:
iconv(tweet$text, from="UTF-8", to="ASCII", "byte)
и мне только удается заставить это выглядеть так:
<ed><a0><bd><ed><b2><af>
Итак, подведя итоги и по окончании моих тестов я получил следующие результаты:
<ed><a0><bd><ed><b2><af>
<ed><U+00A0><U+00BD><ed><U+00B2><U+00AF>
\xed��\xed��
Ни один из которых не похож на кодовую точку, указанную в таблице:
U+1F4AF
Есть ли возможность преобразования между двумя строками? Чего мне не хватает? Почему твиттер возвращает эту информацию для смайликов?