В последно време не съм писал нищо (става въпрос за писане на код) и взе да ми липсва… което май е нормално имайки предвид, че съм Софтуерен Инженер
. Та, много умувах какво да направя, първо бях решил да разширя ScreenShootMe с четка и възможност за писане, обаче това в някаква степен измества фокуса от основната идея на приложението и е трудоемко, а и искам FF да почне да поддържа colorpicker и slider функционалностите от HTML5, за да си спестя ненужни мъки. Впоследствие разбрах, че една колежка е 40 левъл в FarmVille… не че тя е единствената колежка, която играе FarmVille, но определено е висок левъл
. Понеже и аз имам фермичка се сетих, че всъщност в timeline-a на ФБ постоянно излизат съобщения за бонуси в FarmVille и част от тях си заслужават, но е досадно да си проверяваш нон-стоп ФБ за FV бонуси и да цъкаш по тях като ненормален. За това естествено тръгнах да мисля начин за автоматизация на процеса… за БОТ.
След нетолкова кратък рисърч, стигнах до извода че ФБ API-то може и да е удобно и лесно за ползване, но определено би отнело известно време, за да се свикне с него и за да се напише нещо такова, а и писането на PHP или друг скриптов език означава допълнителни constraints за обикновения юзър, който не е виждал програмен език в живота си или пък няма инсталиран нужния софтуер, за да подкара бота. От тук вече избора съвсем се стесни до… хм… Javascript и браузър.
v.0.1: Тръгнах да пиша един html файл, който да отваря ФБ в един фрейм и да парсва линковете за FarmVille… е не стана, незнам дали заради фроуд детекшън или заради нещо друго, но браузърите вече не дават да се бърника/чете html кода на страници в различни от настоящия домейн.
v.0.2: Същото важи и за отваряне на child прозорци и бърникане по техния код… god damn it… X_X
v.0.3: Докато търсех инфо за ФБ API-то попаднах на sandbox, в който може да се тестват разни функционалности – http://developers.facebook.com/tools.php и едно от нещата, които ми направиха впечатление, е че за изпълнение на request се ползва AJAX, a не просто постбек. Това естествено значи, че мога да напиша js код, който да се слага в addressbar-а или като bookmarklet и да обновява информацията през определено време, да я парсва и да отваря част от линковете в нови iframe-ове, което изпълнява целта напълно!
Моля, запишете си нужните продукти за да сготвиме бота
1. Логвате се в ФБ по стандартния начин
2. Отивате тук – http://developers.facebook.com/tools.php и избирате от падащото меню на Method > stream.get (това извежда timeline-a ви)
3. Copy/Paste кода по-долу в addressbar-a (за всички, които виждат браузър за първи път – после натиснете Enter)
javascript:
visited = {};
function process() {
var code = document.getElementById('trace').innerHTML;
var m = null;
while (m = /\<href\>(http:\/\/apps\.facebook\.com\/onthefarm\/.+?)\<\/href\>/gi.exec(code)) {
if (!visited[m[1]]) {
var ifr = document.createElement('iframe');
ifr.src = (m[1].replace(/&/g, '&')).replace(/&/g, '&');
container.appendChild(ifr);
visited[m[1]] = true;
}
}
setTimeout('container.innerHTML = \'\'', 60*1000);
}
function refresh() {
callMethod();
setTimeout(process, 5*1000);
}
container = document.createElement('div');
document.getElementsByTagName('body')[0].appendChild(container);
setInterval(refresh, 120*1000);
void(0);
И така вашия бот би трябвало вече да е напълно оперативен (на български не звучи добре)!!!
Накратко какво прави кода – на всеки 2 минути обновява timeline-а и проверява дали има нови url-и, които да са за FarmVille. Ако има такива ги отваря в iframe-ове (все едно вие сте цъкнали на „Get bonus“ линковете в ФБ). Може да го задействате навсякъде напрактика (освен ако не ползвате Mosaic) и да си събирате колектабълс или нафта или там каквото още имаше.
В заключение ще кажа, че докато четох повторно поста си осъзнах, че явно обичам да пиша глупави, безсмислени и непотребни приложения… или по-скоро ако трябва да избирам между направата на нещо смислено и нещо глупаво, май-май ще се спра на второто
… но пък това е в духа на блога ми все пак








Follow me…
Vesso says:
Ако това го постнеш някъде на английски, сайта ти ще бъде безмилостно прекършен от наплива на милиони фармтардове.
10.03.2010 в 18:37
Lucho says:
И аз си го мислех това
10.03.2010 в 19:23
delqn says:
ne6to ne razbrah kak stava tazi rabota kade trqbva da paste-na tozi skript ne6to ne mi stana qsno ako moje malko razqsnenie molq
10.03.2010 в 11:53
delqn says:
ада
10.03.2010 в 20:24
delqn says:
кайи как да го направя това не6то не става при мен или не сам разбрал не6то
10.03.2010 в 20:25
desi says:
може ли малко повече разясниея за това къде се пейства кода
10.03.2010 в 16:48
Lucho says:
В адресната лента на браузъра.
След това трябва да изчакаш 2 минути, за да започне процеса.
10.03.2010 в 04:18