From the category archives:

Source Code

Исходники twitter бота

by SeoCoder on Март 11, 2010

Исходники к посту о боте
Нужно всего 2 файла: либа, что указана в посту, и тексты самих постов.
Не забываем, что длина поста не более 140 символов.

DEFINE('ROOT', realpath(dirname(__FILE__)).'/'); 
include_once ROOT.'inc/twitter.lib.php'; 
function win2utf($s) 
{ 
   for($i=0, $m=strlen($s); $i<$m; $i++) 
   { 
       $c=ord($s[$i]); 
       if ($c<=127) {$t.=chr($c); continue; } 
       if ($c>=192 && $c<=207)    {$t.=chr(208).chr($c-48); continue; } 
       if ($c>=208 && $c<=239) {$t.=chr(208).chr($c-48); continue; } 
       if ($c>=240 && $c<=255) {$t.=chr(209).chr($c-112); continue; } 
       if ($c==184) { $t.=chr(209).chr(209); continue; }; 
   if ($c==168) { $t.=chr(208).chr(129);  continue; }; 
   } 
   return $t; 
} 
$twitter = new Twitter("login", "pass"); 
$lines = file(ROOT.'inc/posts.txt'); 
$index = mt_rand(0, count($lines)-1); 
$twitter->updateStatus(win2utf($lines[$index]));

{ 5 comments }

Принимаю заказы на программинг

by SeoCoder on Июнь 9, 2009

Вообщем принимаю заказы на кодинг.

* Delphi. Клиент серверные приложения, веб ориентированные и прикладные утилиты.
* PHP. От простых скриптов, до сложных партнерок. MVC. ООП. Codeigniter.

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

p.s. чего то совсем худо и не стабильно с баблом ((
стучим в аську 210 8o2 или через обратную связь.

{ 6 comments }

Плагин для wordpress – постинг по времени, крон

by SeoCoder on Декабрь 8, 2008

Начал пробовать писать себе плагин для вордпресс.
Накрапал вроде как простой. Как заготовка пойдет многим.

/*
Plugin Name: Hourly Poster
Plugin URI: http://www.seocoder.com/
Description: Публикация каждый час
Author: SeoCoder
Version: 0.1
Author URI: http://www.seocoder.org/
*/

function CronActivation() {
wp_schedule_event(time(), 'hourly', 'CronHourlyEvent');
}

function CronDeactivation() {
wp_unschedule_event(time(), 'hourly', 'CronHourlyEvent');
}

function CronHourlyEvent() {
$my_post = array();
$my_post['post_title'] = 'My post. Time is '.time();
$my_post['post_content'] = 'This is my post.';
$my_post['post_status'] = 'publish';
$my_post['post_author'] = 1;
$my_post['post_category'] = array(0);
wp_insert_post( $my_post );
}

register_activation_hook(__FILE__, 'CronActivation');
register_deactivation_hook(__FILE__, 'CronDeActivation');
add_action('PostHourly', 'CronHourlyEvent');
?>

Обсуждение на форуме.
________________________________________
работа в николаеве, смета скачать,
автоинструкторы Москвы

{ 12 comments }

Разработка плагинов для wordpress

by SeoCoder on Декабрь 1, 2008

Собственно начал писать под себя плагины, для wordpress. Столкнулся с двумя вещами, мне не понятными.

1. wp_post – что будет с пингом ping сервисов?! Делать это руками или вордпресс сам все таки пинганет.

2. Внутрений cron вордпресса. Вот это конечно мрак. Хотелось заюзать wp_schedule_single_event , но не очень ясно – как выполнив один раз его, установить сново на рандомное время. Заморочено очень.

Отметьтесь плиз в комментах по этим вопросам. По второму лучше кусочками кода.

{ 6 comments }

Генерация читаемого имени или фамилии

by SeoCoder on Ноябрь 27, 2008

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

Вот пример что оно генерило:

  • Xyulaxyewo
  • Thexyaquot
  • Sathixyaqu
  • Quethaquaz
  • Chocichova

Стоит упомянуть, что длина слова, настраивается.

Помогите с алгоритмом для русского языка. Буду очень признателен.

{ 9 comments }

Регистрация почты gmail.com

by SeoCoder on Ноябрь 19, 2008

Гугл опять что-то меняет. Никак не могу написать регалку для сабжевого мыла. Копирую заголовки один в один с браузера, приходит назад такая же заполненная страница и всё тут. Спалите кто-нибудь рабочий вариант. :)

Логика регистрации сейчас простая. Идем на http://mail.google.com/mail/signup включая handleredirects, сохраняем последний урл для поста, показываем капчу, беря ее адрес с html кода страницы, она будет выглядеть типа так: Капча

Далее отправляем post запрос с такими полями:


Sdata:=Sdata+'type=2';
Sdata:=Sdata+'&loc=RU';
Sdata:=Sdata+'&dsh='+GetField(html, 'dsh');
Sdata:=Sdata+'&ktl=';
Sdata:=Sdata+'&ktf=';
Sdata:=Sdata+'&FirstName='+GenAccount;
Sdata:=Sdata+'&LastName='+GenAccount;
Sdata:=Sdata+'&UsernameSelector=header';
Sdata:=Sdata+'&Email='+GenAccount;
Sdata:=Sdata+'&edk=gmail.com';
p:=GenPassword;
Sdata:=Sdata+'&Passwd='+p;
Sdata:=Sdata+'&PasswdAgain='+p;
Sdata:=Sdata+'&PersistentCookie=no';
Sdata:=Sdata+'&rmShown=1';
Sdata:=Sdata+'&smhck=1';
Sdata:=Sdata+'&nshk=1';
Sdata:=Sdata+'&selection=ownquestion';
Sdata:=Sdata+'&ownquestion='+GenAccount;
Sdata:=Sdata+'&IdentityAnswer='+GenPassword;
Sdata:=Sdata+'&SecondaryEmail=';
Sdata:=Sdata+'&newaccounttoken='+GetField(html, 'newaccounttoken');
Sdata:=Sdata+'&newaccounturl='+httpencode(GetField(html, 'newaccounturl'));
Sdata:=Sdata+'&newaccounttoken_audio='+GetField(html, 'newaccounttoken_audio');
Sdata:=Sdata+'&newaccounturl_audio='+httpencode(GetField(html, 'newaccounturl_audio'));
Sdata:=Sdata+'&newaccountcaptcha='+Edit1.Text;
Sdata:=Sdata+'&program_policy_url='+httpencode('http://mail.google.com/mail/help/intl/ru/program_policies.html');
Sdata:=Sdata+'&privacy_policy_url='+httpencode('http://www.google.com/intl/ru/privacy.html');
Sdata:=Sdata+'&requested_tos_location=undefined';
Sdata:=Sdata+'&requested_tos_language=ru';
Sdata:=Sdata+'&served_tos_location=RU';
Sdata:=Sdata+'&served_tos_language=ru';
Sdata:=Sdata+'&submitbutton=I+accept.+Create+my+account.';

Не забываем указать рефер и заголовки как отдает браузер. Вообщем все это не дает желаемого результата. :(

P.S. Да уж, с LiveWriter код нормально не опубликовать, сцуко.

{ 21 comments }

Компоненты для работы с http в Delphi

by SeoCoder on Ноябрь 17, 2008

По умолчанию в Delphi идет с не плохими компонентами Indy. На дельфи также можно использовать голые сокеты, пример их использования есть в предыдущем посте. Но сегодня я расскажу о других бесплатных компонентах – ICS.

Самое главное, что в них прельщает это их асинхронность, то есть компонент не "подвешивает" форму, не будучи вынесеным в отдельный поток. Главный минус, не очень удачный хелп, но примеры из стандартной поставки решают эту проблему. Второе, с чем наверняка придется столкнуться всем, компоненты для работы с ssl, если раньше они были платными, теперь они тоже for free. Есть небольшой нюанс при установке именно ssl компонент.

Найдем в распакованном архиве файлик OverbyteIcsDefs.inc и в нем найдем такую строчку:

// {$DEFINE USE_SSL}

Нам необходимо расскоментировать эту опцию и откомпилировать и установить проект. Вот и все. ;)

Удачи в освоении нехитрых технологий программирования.

P. S. Что нас ждет в близжайщих постах: Гугл фильтр чекер, Многопоточный FTP аплоадер, GYMSnippets – настраиваемый парсер снипетов гугла, яху, мсна, а также обзор блогов оставивших заявку. Не стесняемя подписываемся и комментируем.

{ 17 comments }

TOR смена ip программно

by SeoCoder on Ноябрь 16, 2008

Надеюсь все знают как и зачем юзать TOR. Эта штука позволит вам быть анонимным при серфинге. Но думаю не все знают как там менять ip программно.

Способ очень простой, коннектимся к сокету локальному тора, посылаем пару комманд и вуаля. Меньше слов – больше дела и кода.

proecure ChangeIp;
var
  sck:TIdTCPClient;
begin
  sck:=TIdTCPClient.Create(nil);
  try
    sck.Host:='127.0.0.1';
    sck.Port:=10051;
    sck.Connect;
    sck.SendCmd('authenticate','');
    if sck.LastCmdResult.Code='250' then
    begin
      sck.SendCmd('signal newnym',''); // это вот как раз и меняет IP
    end;
  finally
    sck.Free;
  end;
end;

Надеюсь тема не была спалена, так как это уже давно баян. Скорость у тора не ахти, но юзать можно.

{ 9 comments }

База англоязычных имен и фамилий

by SeoCoder on Октябрь 1, 2008

Выкладываю свою базу имен и фамилий. Думаю никому не надо объяснять зачем оно надо?! Это правдоподобные регистрации как минимум. Выложил csv – импортировать легко в mysql при помощи LOAD DATA INFILE.

Имен в базе – 26590. Фамилий – 1658866 (вообщем много) ;)

Файл большой вышел – почти 9 мегов.

P.S. Качаем – говорим спасибо и скидываем на пиво Z260880410831 ;)

Скачать базу имен и фамилий

{ 14 comments }

Заметки про Gmail

by SeoCoder on Август 26, 2008

Закончив писать «конфирмилку» для Gmail я вот что обнаружил, почту от гугла можно тоже получать как rss.

Если баян, то сорри, я был удивлен, нашел это после того как полностью уже дописал код при помощи ssl и pop3 на нестандартном порту  ((

Ну а как получать почту, можно узнать под катом. ;)

[click to continue...]

{ 12 comments }

Get Adobe Flash playerPlugin by wpburn.com wordpress themes