Получить данные Twitter аккаунта с помощью PHP расширения SimpleXML

Здравствуйте, уважаемые подписчики и посетители блога 4remind.ru. В продолжение предыдущей статьи я хочу предложить Вам скрипт, который позволит получить данные Twitter аккаунта с помощью PHP расширения SimpleXML и вывести их в удобном для восприятия виде.

Для начала небольшое отступление, а точнее дополнение к предыдущей статье Обработка данных XML с помощью PHP расширения SimpleXML, где мы получали статистику о домене и внешних ссылках на него от сервиса Solomono.ru.

Кроме статистики о домене в общем сервис Solomono.ru предоставляет возможность получить статистику и по конкретной странице сайта, правда статистика весьма скромная, но в то же время все же полезная. Для получения данных о конкретной странице сайта нужно выполнить запрос, как этот:


http://xml.solomono.ru/?r=uv&url=http://АДРЕС-ДОМЕНА/АДРЕС-ВАШЕЙ-СТРАНИЦЫ/

где вместо АДРЕС-ДОМЕНА/АДРЕС-ВАШЕЙ-СТРАНИЦЫ/ нужно прописать нужный Вам адрес. Для примера можно ввести адрес страницы about самого сервиса Solomono.ru (данные с которого мы получали в предыдущей статье):


http://xml.solomono.ru/?r=uv&url=http://solomono.ru/about/

И мы получим примерно вот такие данные в формате XML:

<data>
   <page url="http://solomono.ru/about/" index_date="03.04.2012">
      <uv>2</uv>
      <hout>3</hout>
   </page>
</data>

Для нормального восприятия данных, используя PHP расширение SimpleXML и следующий скрипт:

<?php
   $pageurl = 'http://solomono.ru/about/'; // адрес страницы
   $url = 'http://xml.solomono.ru/?r=uv&url=' . $pageurl; // полный URL
   $xml = simplexml_load_file($url);

   // Выводим данные о странице из XML
   echo '================================================<br/>';
   echo ' Данные о странице сайта с сервиса Solomono.Xml<br/>';
   echo '================================================<br/><br/>';
   echo 'Страница: <b>' . $xml->page[url] . '</b><br/><br/>'; // URL вашей страницы
   echo 'Дата индексации: <b>' . $xml->page[index_date] . '</b><br/>';
   echo 'Уровень вложенности страницы: <b>' . $xml->page->uv . '</b><br/>';
   echo 'Кол-во внешних ссылок на странице: <b>' . $xml->page->hout . '</b><br/>';
   echo '================================================';
   echo '<br/>';
?>

мы получим данные примерно в таком виде:

Данные страницы сайта сервиса Solomono.ru

Ну а теперь настала пора заняться вопросом о том, как получить данные Twitter аккаунта на PHP-скрипте с помощью расширения SimpleXML.

Twitter API предоставляет возможность получить самые основные данные о Twitter аккаунте в формате XML. Данных там гораздо больше, чем рассмотренный нами выше XML с информацией о странице сайта сервиса Solomono.ru. На примере я покажу как получить самые популярные, наиболее используемые из предоставляемых нам данных.

Итак, для того, чтобы получить информацию о любом Twitter аккаунте, нам понадобится выполнить запрос:


https://twitter.com/users/show/ИМЯ-TWITTER-АККАУНТА

где вместо ИМЯ-TWITTER-АККАУНТА нужно прописать нужный Вам аккаунт. Для примера можно ввести Twitter аккаунт Яндекса:


https://twitter.com/users/show/yandex

Мы получим примерно такие данные в формате XML:

<user>
	<id>25697989</id>
	<name>Яндекс</name>
	<screen_name>yandex</screen_name>
	<location>Москва</location>
	<description/>
	...
	<url>http://company.yandex.ru</url>
	<protected>false</protected>
	<followers_count>214337</followers_count>
	...
	<status>
	<created_at>Wed May 02 11:29:42 +0000 2012</created_at>
	...
	<possibly_sensitive>false</possibly_sensitive>
	<contributors/>
	</status>
</user>

Я намеренно сократил содержимое XML файла, заменив убранные строки символами «...», так как слишком большая страница получилась бы. Но Вы можете просмотреть XML для Twitter аккаунта Яндекса полностью, выполнив в браузере запрос https://twitter.com/users/show/yandex.

Для парсинга XML и нормального для глаз восприятия данных, мы снова используем PHP-скрипт с расширением SimpleXML:

<?php 
   $account = 'yandex';
   $url = 'https://twitter.com/users/show/' . $account; // полный URL для данных Twitter аккаунта
   $xml= simplexml_load_file($url); // Интерпретируем XML-документ в объект

   echo '==============================<br/>';
   echo '<b>  Данные Twitter-аккаунта </b><br/>';
   echo '==============================<br/><br/>';
   echo '<b>Аккаунт: </b><span style="color:blue;font-weight:bold;">' . $xml->screen_name . '</span><br/>'; // Ник аккаунта
   echo '<b>Имя: </b><span style="color:blue;font-weight:bold;">' . $xml->name . '</span><br/><br/>'; // Реальное имя
   echo '<b>О себе: </b><span style="color:blue;font-weight:bold;">' . $xml->description . '</span><br/>'; // Описание "О себе"
   echo '<b>Сайт: </b><span style="color:blue;font-weight:bold;">' . $xml->url . '</span><br/><br/>';  // Сайт владельца аккаунта Twitter
   echo '<b>Кол-во Твитов: </b><span style="color:blue;font-weight:bold;">' . $xml->statuses_count . '</span><br/>'; // кол-во Твитов
   echo '<b>Кол-во Фолловеров (кто читает): </b><span style="color:blue;font-weight:bold;">' . $xml->followers_count . '</span><br/>';  // Кол-во Фолловеров (кто читает)
   echo '<b>Кол-во Друзей (кого читает): </b><span style="color:blue;font-weight:bold;">' . $xml->friends_count . '</span><br/><br/>';  // Кол-во Друзей (кого читает)
   echo '==============================<br/>';
?>

Выполнив этот скрипт мы получим данные примерно в таком виде:
Данные Twitter аккаунта компании Яндекс

Вы наверно заметили, что среди данных о Yandex аккаунте нет ничего в поле «О себе». Ну что же, просто по каким-то причинам компания Яндекс не захотела заполнять это поле данными :) Да, и в скрипте для лучшего вида результатов его работы я добавил немного стилей прямо в код HTML, чего делать не желательно, и если Вам тоже захочется приукрасить вид данных, то лучше выносите все стили в CSS файл.

Для того, чтобы получить данные о своем Twitter аккаунте или об аккаунте приятелей, знакомых, Вам нужно всего лишь заменить в скрипте значение переменной $account. Если же Вам покажется недостаточно используемых в скрипте данных, то Вы сами можете добавить в скрипт нужные Вам, внимательно просмотрев исходный код XML и взяв оттуда необходимые Вам имена тэгов и их параметров.

Напомню, что для получения данных в формате XML нужно в браузере выполнить запрос


https://twitter.com/users/show/ИМЯ-TWITTER-АККАУНТА

где вместо ИМЯ-TWITTER-АККАУНТА понадобится подставить нужный Вам аккаунт.

На этом я пожалуй закончу. Желаю успешного развития вашему Twitter аккаунту и как можно больше пользы от него. До встречи на страницах блога 4remind.ru

Метки: , , , , ,
Другие статьи похожей тематики:

Поделитесь материалом с другими, воспользуйтесь этими кнопками:
Получать обновления и новые материалы блога по E-mail

Оставить комментарий

Подписаться на обновления блога 4remind.ru по RSS
Новости блога в социальных сетях

="4remind.ru

Rambler's Top100
Рейтинг@Mail.ru


Яндекс.Метрика