Перейти к содержимому

Реферальная программа Мегаплана

Выбрать шаблон и создать сайт

Спамер для Twitter :)

#1 Вячеслав

Вячеслав
  • Пользователь
  • 357 сообщений
  • Репутация: 0
0

Отправлено 28 Август 2009 - 22:13

Объясните как все это сделать ато никак не пойму что да куда, какова последовательность, как написать такой скрипт чтоб работал на сайте? 


 

 

  • 0

#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 05 Февраль 2010 - 23:35

Вячеслав, странно, но только сейчас обнаружил данную тему.

Т.к. в Twitter длина сообщения ограничена 140 символами, в которые надо вместить заголовок, частичку анонса и ссылку, то весь этот текст надо заранее подготовить.

Всё что ниже идёт до заголовка Постинг и есть тот инструмент, чтобы подготовить ваш текст и ссылку к отправке в Twitter

А сама отправка происходит с использованием класса Twitter, который надо подключить.
В классе используется cURL, который должен стоять на хостинге, где используем данный скрипт.
Проверка поддержки cURL на вашем хостинге, по результатам функции phpinfo()
Надо посмотреть присутствие данных о cURL. будет написано "cURL support enabled", то на вашем сервере есть curl.

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

Вообщем код будет примерно таков:
<?php

// На самом деле константы определяются не тут, а в файле конфигурации
define(CONFIG_TWITTER_USERNAME, 'имя в твиттере');
define(CONFIG_TWITTER_PASSWORD, 'пароль от твиттера');

include_once("Twitter.class.php"); // подключаем класс для управления API-твиттера, ссылку дал выше

// вставляем определение функции strip_tags_smart() из приложенного файла

// определение функции урезания строки до определённой длины
function substr_plain($str, $length = null) {
if (mb_strlen($str) <= $length) {
return $str;
}

$strPos = mb_strpos($str, ' ', $length);

if ($strPos > 0) {
return mb_substr($str, 0, $strPos);
}
else {
return mb_substr($str, 0, $length);
}
}

function twitThis($caption, $text, $url) {
$text = strip_tags_smart($text); // удаляем все теги из текстового сообщения

$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => 'Content-Type: application/x-www-form-urlenpred' . PHP_EOL,
'content' => 'link[url]=' . urlencode($url),
),
)); // формируем запрос, для получения укороченной ссылки

$url = trim(file_get_contents('http://tweetburner.com/links', false, $context)); // получаем укороченную ссылку
$maxTextLength = 160 - strlen($url) - 4; // считаем оставшуюся длину для заголовка и сообщения

$twText = substr_plain($caption . ': ' . $text, $maxTextLength) . '... ' . $arItem['detail_url']; // формируем полное сообщение из заголовка и части текста обрезанных по длине + ссылка

$TwitterClient = new Twitter(CONFIG_TWITTER_USERNAME, CONFIG_TWITTER_PASSWORD); // создаём твиттер-клиент для отправки

// Посылаем запрос
if ($result = $TwitterClient->updateStatus($twText)) {
/* помечаем запись как отправленную в твиттер */
return true;
} else {
return false;
}
}

// использование функции помещения данных в Twitter

twitThis("заголовок", "анонс", "http://www.masterwebs.ru/topic/6165-spamer-dlja-twitter/");

Прикрепленные файлы


  • 0


Оформление форума – IPBSkins.ru