Загрузка. Пожалуйста, подождите...

                    

                        
RSS
  • Главная
  • Регистрация
  • Карта сайта
  • О нас

» Web-дизайнерам » Найти все ссылки на сайт из Твиттера

Найти все ссылки на сайт из Твиттера

Web-дизайнерам Комментарии (9)

Твиттер с каждым днем все плотнее входит в блогосферу. Одной из причин тому является возможность следить за тематической информацией и новыми статьями других блоггеров. Также, следя за тем, кто ссылается на ваш блог в Твиттере, можно делать выводы о том, какие посты больше нравятся читателям. Ведь если рекомендуют почитать, значит нравится, не так ли?


Кстати, на днях узнал про тренинг-центр "Говорун". До них вообще ничего не слышал про психологические тренинги, а теперь задумался - не заняться ли мне чем-нибудь подобным? Всегда пригодится.


Но вернемся к теме. Простейший способ найти ссылки на блог - воспользоваться стандартным поиском твиттера и искать URL. Но проблема в том, что большая часть ссылок сокращается с помощью различных сервисов, и их вы уже не найдете таким образом.


Я поставил перед собой задачу: найти способ выуживания всех ссылок из твиттера, даже скрытых, и сделать подобие виджета для вывода твитов с упоминаниями определенного сайта.


C реализацией мне помог сервис backtweets.com, выполняющий первую часть задачи: поиск ссылок на заданный сайт. Остается лишь воспользоваться предоставленной информацией, а точнее, написать скрипт, приводящий ее в требуемый вид. Использовал я PHP.


Получившийся скрипт получает последние твитты, в которых указана ссылка на заданный сайт и выводит их. Для ускорения загрузки страниц твиты кэшируются на сервере. Срок жизни кэша задается в скрипте, равно как и число выводимых твиттов.


Собственно, сам скрипт:

<?php
/* Функция закачки файла */
function download($url, $xmlfile) {
$file = file_get_contents($url);
if ($file) file_put_contents($xmlfile, $file);
}

/* Блок настроек */
$site_url = 'webholt.ru'; // искомый сайт
$tweets_count = '3'; // Число выводимых твитов
$xmlfile = 'twilinks.xml'; // Пусть к файлу кэша
$file_life = '1'; // Срок жизни кэша в часах

/* Формирование запроса твиттов с ссылками */
$xml_url = 'http://backtweets.com/search.xml?q='.$site_url.'&key=key';

/* Закачка файла на сервер при его отсутствии */
if (!file_exists($xmlfile)) {
download($xml_url, $xmlfile);
}
    
/* Разбор ленты, вывод */
$xml = simplexml_load_file($xmlfile);
$i = 1;
foreach ($xml->tweets->entry as $entry) {
$tweet = $entry->tweet_text;
$avatar = $entry->tweet_profile_image_url;
$tweeple = $entry->tweet_from_user;
$tweet_id = $entry->tweet_id;
echo '<div class="twipost"><img src="'.$avatar.'" class="twiava"><a href="http://twitter.com/'.$tweeple.'" rel="nofollow">@'.$tweeple.'</a><br>'.$tweet.'</div>';
$i++;
if ($i > $tweets_count) break;
    }

/* Копирайт. Может редактироваться на каше усмотрение. Особо жадные и наглые вебмастера могут удалить или закрыть ссылку от индексации. Это на вашей совести */
echo 'Скрипт от <a href="http://webholt.ru/web-designers/129-najti-vse-ssylki-na-sajt-iz-tvittera.html">webholt.ru</a>';

/* Проверка файла кэша на устаревание */
    if (time() > filemtime($xmlfile) + 60*60*$file_life) {
        // Закачать и сохранить
        download($xml_url, $xmlfile);    
    }
?>


Для нормального отображения необходимо настроить CSS. Мои настройки:

.twiava{
float:left;
padding-right:10px;
}
.twipost{
clear:both;
border-bottom:1px dotted #e1e3e3;
padding-bottom:10px;
padding-top:5px;
}


Подчеркнуты обязательные параметры. Остальное - на свое усмотрение, под дизайн вашего сайта должно подгоняться.


Данный скрипт будет правильно работать с кодировкой UTF-8. Если у вас Windows-1251, в блоке скрипта *Разбор ленты, вывод* найдите строку

echo '<div class="twipost"><img src="'.$avatar.'" class="twiava"><a href="http://twitter.com/'.$tweeple.'" rel="nofollow">@'.$tweeple.'</a><br>'.$tweet.'</div>';

и замените ее на
echo '<div class="twipost"><img src="'.$avatar.'" class="twiava"><a href="http://twitter.com/'.$tweeple.'" rel="nofollow">@'.$tweeple.'</a><br>' . iconv("UTF-8","windows-1251", $tweet) . '</div>';


Я бы не делал кэширование, если бы не заметил, что с ним скрипт отрабатывает примерно в полторы тысячи раз быстрее. Впечатляет, не правда ли? Если необходимо срочно сбросить кэш, просто зайдите по FTP и удалите файл "twilinks.xml".


Для корректной работы кэширования необходимо, чтобы каталог с файлом кэша был доступен для записи.


Саму работу скрипта можно понять из кода и комментариев к нему.


Вот, собственно, и все. Результат работы можно увидеть у меня в сайдбаре (Ссылки на блог из Тви).

Что бы Ктулху не воскрес, подпишись на RSS!

Хотите получать информацию о новых записях на e-mail? Подпишитесь на RSS-рассылку. Введите адрес вашей электронной почты в форму ниже и нажмите "Подписаться".

Уважаемый посетитель, вы зашли на сайт как незарегистрированный пользователь. Оставленные комментарии отправляются на модерацию. После регистрации появится возможность попасть в список Комментаторов.


Другие новости по теме:

  • Блок с обратными ссылками
  • Автопостинг в Twitter через oAuth
  • Автопостинг в Twitter
  • Настраиваем рекламную строчку Nolix
  • Сокращаем количество внешних ссылок
  • 19-09-2010, 18:28 
    Просмотров: 4179



    #1 написал: Zorg (19 сентября 2010 19:01)



    Группа: Читатель
    Регистрация: 10.09.2010
    Мог бы быть полезным если бы кроме прямых проверял еще и сокращенные ссылки (которых в твиттере, конечно, 90%). 
    ICQ: 170944744 [цитировать]

    #2 написал: gwer (19 сентября 2010 19:43)



    Группа: Администраторы
    Регистрация: 4.12.2009
    Zorg, в этом и есть его польза - скрипт как раз-таки проверяет и показывает сокращенные ссылки. Вероятно, стоило прочитать пост внимательнее.
    ICQ: -- [цитировать]

    #3 написал: Zorg (19 сентября 2010 20:22)



    Группа: Читатель
    Регистрация: 10.09.2010
    gwer, доверяй но проверяй. Зашел на сервис и проверил, после прочтения поста, разумеется. Сервис не нашел моих ссылок.

    Но два здравомыслящих человека не могут ошибаться. Зашел еще раз, провел небольшую серию мини-тестов. Выяснилась причина.

    Сервис не в состоянии определить ссылки на домены третьего уровня. 
    ICQ: 170944744 [цитировать]

    #4 написал: Semm (19 сентября 2010 20:47)



    Группа: Гости
    Регистрация: --
    О степени полезности судить трудно. Вот если ПС эти ссылки будут как бэки воспринимать, которые будут как-то влиять на выдачу или ТИЦ, тогда да...
    ICQ: -- [цитировать]

    #5 написал: gwer (19 сентября 2010 21:05)



    Группа: Администраторы
    Регистрация: 4.12.2009

    Zorg, проверил специально домен третьего уровня - находит и прямые и сокращенные ссылки. Вот, кстати, сейчас в сайдбаре висит сокращенная ссылка.

     

    Semm, скрипт не нацелен на SEO.

    ICQ: -- [цитировать]

    #6 написал: Zorg (19 сентября 2010 21:12)



    Группа: Читатель
    Регистрация: 10.09.2010
    gwer, нужно придти к какому-то результату. Давайте сравним наши тесты.

    Не находит, например:
    http://backtweets.com/search?q=nanote.net.ru 
    http://twitter.com/nanote_cms (все ссылки сокращены bit.ly и ведут на nanote.net.ru) 

    Очень маловероятно, но возможно xml выдача - корректнее чем поиск в самом веб-сервисе. Но в это я верю с трудом.
    ICQ: 170944744 [цитировать]

    #7 написал: gwer (19 сентября 2010 21:24)



    Группа: Администраторы
    Регистрация: 4.12.2009
    Zorg, вы как-то криво сокращаете ссылки. Они редиректят на ссылки вида feedproxy.google.com/~r/nanote/~3/EaAVasBkeYc/nanote-puzzle?utm_source=twitterfe
    ed&utm_medium=twitter, а оттуда уже идет редирект на основную страницу. Отсюда и косяк. 
    ICQ: -- [цитировать]

    #8 написал: Zorg (19 сентября 2010 21:32)



    Группа: Читатель
    Регистрация: 10.09.2010
    gwer, не я, а twitterfeed. Видимо для своего внутреннего учета переходов. Наконец пришли к какому-то заключению. Сервис не воспринимает трансляции с twitterfeed. Капля дёгтя.

    Кстати feedproxy.goole появился недавно. Проверил свои сервисы анти-укоротители ссылок - теперь перестали работать с ссылками из twitterfeed. :) Жестоко.

     
    ICQ: 170944744 [цитировать]

    #9 написал: Жерка Лукич (19 сентября 2010 22:10)



    Группа: Гости
    Регистрация: --
    @zorg: на js (json) в пару строчек было бы +API на 1000 запросов
    @qwer: http://www.backtype.com/domain/nanote.net.ru/conversations
    ICQ: -- [цитировать]

    Добавление комментария


    Ваше Имя:
    Ваш E-Mail:
    Код: Включите эту картинку для отображения кода безопасности
    обновить, если не виден код
    Введите код






    Купить литые диски в москве
    Контактная информация. Онлайн-консультация.
    vse-shini.ru
    Заказать печать через интернет
    Сведения о применяемом оборудовании и материалах. Контактная информация.
    pe4ati.su
    • QR-код данной страницы

    • Вход на сайт

        Логин
        Пароль
         
        » Регистрация на сайте!
        » Забыли пароль?
    • Навигация

      • Главная
      • Web-дизайнерам
      • CSS-хитрости
      • SEO
      • Сервисы
      • Заработок в интернете
        • На сайте
        • Без сайта
      • Photoshop
      • Интернет-полезности
      • BestMasterиZация
      • Обзоры
      • Цитаты
      • Из зомбоящика
      • Блог
      • Разработка
      • Проекты
      • Мое мнение
      • Обманы
      • Twitter
      • Twidium
    • Опрос

        Статьи какой категории вы бы хотели видеть на сайте чаще?

        Полезности в интернете
        Хитрости CSS
        Web-дизайнерам
        Заработок в интернете
        Photoshop
        SEO


    Photoshop Online
    Просмотр скрытой информации ВКонтакте

    © WebHolt
    Рейтинг блогов
    Копирование материалов с сайта разрешено исключительно при наличии активной ссылки на сайт