Aukro v nové soutěži odměnuje šikovné programátory
V těchto dnech probíhá na Aukro.cz soutěž „Aukro naděluje“. Každý den organizátoři umístí do nějaké náhodné sekce na Aukru relativně hodnotné produkty za směšně nízkou cenu. Je k dispozici vždy pouze 1 kus. Vy musíte tento produkt najít a zakoupit jako první.
O soutěži jsem se dozvěděl na Twitteru a nebýt následujícího odvážného prohlášení Aukra, ani bych se jí příliš nezaobíral:


„Nebojte, na roboty a podvodné programy jsme mysleli, takže tudy cesta nevede.“
Kdy jsem naposledy viděl tak obrovskou výzvu?! :)
Dal jsem se tedy do programování jednoduchého pomocníka:
- Na vstupu dostane ID poslední vyhrané aukce
- Průběžně zvyšuje ID a hledá, jestli v kódu daných aukcí je alespoň 3x slovo „aukroplus“
- Pokud ano, stáhne si obrázek a odkaz do databáze mezi "nadějné"
- Pokud ne, jen si uloží informaci, že tato aukce nás nezajímá
Podobně jste mohli aukci hledat ručně (měnit v URL adrese číslo aukce). Jen by vám to trvalo tak 10000x déle.
Tento skript jsem spustil na několika oddělených serverech a poté si ještě napsal „klienta“, který mi nalezená data shrne a vypíše jen „pravděpodobně výherní“ aukce.
Výsledek:
- Robot mi obě aukce přehledně nabonzoval cca 5-15 sekund po tom, co byly vystaveny
- Přímo na produktovou stránku jsem se v obou případech dostal dříve, než za 30 sekund od vystavení aukce
- Obě aukce již byly ukončené
Co říct závěrem?
- V podobných soutěžích nemá běžný uživatel téměř žádnou šanci.
- Je to soutěž programátorů, kterým to jen trošku ztěžují desetitisíce uživatelů bloudících po webu (je možné, že se někdo na aukci náhodně dostane rychleji)
- Aukro programátorům třetí den soutěže hodně pomohlo. Dříve uživatelům napovídali, ve které sekci aukci mají hledat, poté ale nápovědu ukončili a tím uživatele rozptýlili po celém webu. Byla tedy menší pravděpodobnost, že aukci najdou dříve, než programátoři.
- Gratuluji tomu, co napsal rychlejší skript, příp. měl k dispozici rychlejší servery a čas na optimalizaci :))
Dodatek pro programátory: vím, že to by to asi šlo řešit lépe, např. přes seznam nových uživatelů, nebo filtrovat ještě dle jiných kritérií, které mají vítězné aukce společné. Ale zas tak moc jsem systém a chování organizátorů nezkoumal ;))
Čtěte také:
- Aukro v nové soutěži odměnuje šikovné programátory
- "Legální" spam - nenechte se napálit
- Hacking webů - obrana, techniky (1)
Názory a komentáře k článku
| [1] Radek | 18. 11. 2011, 16:33 |
| Zdravim. Dle me zkusenosti vami popisovana metoda nevede k cili. Myslim si, ze reseni nebude az tak primocare. | |
| [2] Michal Smrčka admin | 18. 11. 2011, 16:38 |
| Vy si to myslíte, já jsem to vyzkoušel a celkem podrobně popsal. | |
| [3] Radek | 18. 11. 2011, 16:42 |
| Cilem byla myslena vyhra. Vy jste vyhral? Jestli ano, pak neni o cem mluvit. | |
| [4] George | 18. 11. 2011, 17:21 |
| Michal: No, kdybys ten program trochu potunil, tak bys to mohl klidně prodávat. ;) | |
| [5] Nekdo | 18. 11. 2011, 18:25 |
| Prodavat :D? Ja vyhral diky trochu jinemu zpusobu, ktery opravdu popisovat nebudu :D Ale oni se s tim vazne nijak nezabyvali. Kazdopadne je tam nejmene 5 voditek, kterymi se lze dostat k vyhre pod par sekund =) A sikovny clovek to napise tak, ze ani sebe lepsi webmaster s tim nic nenadela.. | |
| [6] BeNiSh e-mail | 18. 11. 2011, 19:41 |
| s mym pomocnickem sem se dostal k aukci do 10ti vterin a taky uz sem vzdy koukal na skoncenou aukci. a pres uzivatele na to nejdu ani pres bezny aukce, prijde mi to prilis zlouhavy reseni ;-) v podstate me uz ani nezajimaj ceny jako zpusob reseni :D chtelo by to nekde o tom programatorsky pokecat | |
| [7] Petr Hejl | 18. 11. 2011, 19:46 |
| Musíte na to jít přes "jiné objekty". :D | |
| [8] Hmmm | 18. 11. 2011, 23:34 |
| Naco preboha stahujes obrazky? Uz len preto to nemoze byt rychle | |
| [9] Jenda e-mail | 19. 11. 2011, 00:08 |
| Nehledej to podle aukcí, ale podle posledně registrovaných uživatelů + jestli mají „aukroplus“ + jestli mají něco vystaveno a je to tvoje | |
| [10] Miloš e-mail | 19. 11. 2011, 02:14 |
| Ahoj, prosím vás nemohl by mi někdo poslat návod na emal: milos.kupec@centrum.cz podrobný návod jak bych mohl některou z aukcí najít? Děkuji :) | |
| [11] Sašetka e-mail | 19. 11. 2011, 11:26 |
| Hele tak někdo ten skipt pošlete...nebo program ve kterém se dá utvořit...nemám celý víkend co dělat, tak se budu bavit :oDDDDDDD | |
| [12] Sašetka e-mail | 19. 11. 2011, 11:35 |
| Hele tak někdo ten skipt pošlete...nebo program ve kterém se dá utvořit...nemám celý víkend co dělat, tak se budu bavit :oDDDDDDD | |
| [13] Petr Hacker e-mail | 19. 11. 2011, 11:53 |
| Já ten skript mám, a možná bych ho i pustil, ale zadarmo to samozřejmě nebude (musíte uvážit, kolik na tom lze vydělat, když bych ty výhry prodával). Rozhodně to není žádný debilní prohledávání aukcí a skript je vylazený na milisekundy, žádné sekundy, jak píše autor článku! Nechci ho prodávát hromadně - to by němelo smysl, takže ho dám největší nabídce. Nabídky posílejte na petr.zubel@seznam.cz (pro rýpaly jen orientační náklady na výrobu - dělal jsem to asi 16 hodin a v práci mám hodinovku 500 Kč). | |
| [14] Tipař www | 19. 11. 2011, 11:58 |
|
Tyhle soutěže jsou vždycky dostihy programátorů. Zkoušel jsem napsat bota, který tyhle aukce vyhledá a v páteční soutěži mi ten robot vyhodil všechny aukce do minuty od zveřejnění. Kdybych dodělal multithreading a skript nasadil na server místo domácího PC, tak věřím, že ty aukce mám do 5 sekund. Ale i to je pomalé.
Ale stejně mám pocit, že to vyhrává bot, který umí i nakoupit a zaplatit, což můj neumí :D | |
| [15] Petr Hacker e-mail | 19. 11. 2011, 12:19 |
|
To Tipař - ano, 5 sekund je opravdu hodně... Většinou je to 3-4 sekundy po prodání :)
A ano, můj skript umí předmět i zakoupit. Zaplacení není nutné - to už člověk může udělat v pohodě ručně... | |
| [16] hogofogo e-mail www | 19. 11. 2011, 12:31 |
| Vazeni, vsimnete si kolik tech botu uz bezi. U kazde nove aukce je behem prvnich nekolika sekund od 3 do 15 zhlednuti a je jedno o jaky kram se jedna. A to je jeste vikend a nebezi soutez. Aukro si s tim fakt hlavu nelamalo a predmety lze lehce najit. Ptoto kazdemu normalnimu doporucuju radsi vydelavat jinak a to po cem touzite si radsi kupte za vydelane penize, usetrite si cas a zklamani.@Petr Hacker - kdyz si sedel nad necim takovym 16 hodin tak se nedivim ze to musis prodavat, bez se radsi ucit ;) | |
| [17] Petr Hacker e-mail | 19. 11. 2011, 12:50 |
|
Ano, 16 hodin. Cca 2 hodiny hledání vhodného algoritmu, jako to hledat (abych jako autor článku neprocházel aukci za aukcí), cca 3 hodiny psaní a testování kódu a zbytek prosté časové ladění - každá milisekunda se prostě počítá. A o úspěchu myslím svědčí páteční úspěch :)
A právě jsem obdržel první nabídku (no popravdě čekám trochu více), takže kdo má zájem, pište nabídky nebo se ptejte, vše krom algoritmu zodpovím... | |
| [18] Petr Hacker e-mail | 19. 11. 2011, 13:09 |
| To Sašetka: Snad nemyslíš, že ti to někdo pošle nebo zveřejní zdarma? Ono to dá docela i práci, víš? :) A pokud neprodám, tak se mi to zaplatí z vyhraných aukcí... :D | |
| [19] George | 19. 11. 2011, 13:27 |
| No předpokládám, že i když ho prodáš, tak ho budeš taky nadále používat. Kdybys ho neprodal, tak bys stejně nemohl vyhrát větší množství aukcí sám, to by bylo trochu podezřelé. | |
| [20] George | 19. 11. 2011, 13:37 |
| A nechceš ten script vydražit na aukru? To by bylo docela pikantní a měl bys víc zájemců. :D | |
| [21] vesela gumka e-mail | 19. 11. 2011, 14:00 |
|
viz: A o úspěchu myslím svědčí páteční úspěch :)
Super to gratulejsn! a kolik si tedy vyčenichal a skutečně vyhrál v pátek kousků? konkrétně který z 1-5? | |
| [22] Petr Hacker e-mail | 19. 11. 2011, 14:38 |
|
Ne, když ho prodám, tak už ho používat nebudu (i když se to těžko věří, viď?). Ze stejného důvodu ho nechci prodat vícekrát - to by nemělo význam - ze stejného důvodu nechci dražit na aukru. Víš co, v podstatě jsem to začal psát jako výzvu - protože aukro psalo, že to maj zabezpečený, tak mě spíše zaujalo jak (abych se případně mohl inspirovat ve svých aplikacích). Bohužel to byly jen plané řeči a tak jediný problém byl v tom, aby ten skript byl rychlejší než ty od ostatních programátorů (takže opět taková malá výzva). První pytel mi v pátek utekl, protože tam byla ještě chybička, kterou jsem opravil. Další už mi to chytlo všechny (ještě neprodané), ale koupil jsem samozřejmě jen jeden z toho důvodu, abych to otestoval (samotný pytel mi bude k ničemu - mám pohodlnou židli a nepotřebuju žádný pytel se zrním). Takže jak říkám, byla to jen výzva (kdyby aukro nepropagovalo, jak to maj zabezpečené, asi bych tím neztrácel čas - na to je můj čas příliš drahý). A teď (když už je to vyzkoušené a otestované) to buď pošlu dál a nebo to budu používat do doby, než se mi zaplatí aspoň ten ztracený čas (původně jsem tomu chtěl věnovat tak 2 hoďky, ale prostě se to zdokonalovalo a zdokonalovalo a zdokonalovalo a nějak jsem u toho zkysnul). Neprogramátor to asi nepochopí, ale programátor není povolání, je to prostě poslání, pro které žiju a navíc jsem hrozně egoistický, takže to byla opravdu výzva.
Takže skript stále nabízím k prodeji nejvyšší nabídce (na email: petr.zubel@seznam.cz), ale raději předem upozorňuji, že přesto, že jsem skript optimalizoval na nejmenší možné milisekundy, tak si nedělám naději, že jsem nejlepší programátor na světě, takže se může v pondělí klidně objevit něco ještě výkonnějšího. Ono taky záleží na tom, kde to běží, jaké je připojení atd., takže i rozdíl optiky 50/50 a 100/100 může pár milisekund přidat a už to nemusí zaručit výhru. Skript běží na nevytíženém osmijádrovém serveru s 8GB RAM a připojený jsem optikou 50/50 (to jen tak pro představu) - ale v pátek mi to chytlo 4 z 5... | |
| [23] BeNiSh e-mail | 19. 11. 2011, 20:42 |
|
postup ste zverejnit meli az po soutezi. ted si neco podobnyho doprogramuje kazdej nymand =) ke vsemu verim, ze uz nekdo z aukra si to procet a dalsi vitezny aukce uz tak dohledatelny nebudou. staci, ze pouzijou nejakej starsi ucet, popr. novej s rucne dodanym ID. taky muzou aukce vystavit uz davno predem treba jako skryty v archivu a v inkriminovanou dobu je vystavit/zmenit. v takovejch pripadech se skenovani nejnovejsich aukci ci useru A+ mine ucinkem. kdyby se tyhle zpravy nezverejnovali, jiste by jim jejich nabubrelost nedovolila ani pochybovat :o) nejspolehlivejsi zpusob je podle myho projizdeni vsech aukci, ale to je casove narocny - muj pomocnik dokaze zkontrolovat 500 aukci do 5ti minut s 99% uspesnosti. ovsem to je v porovnani s konkurenci stejne k nicemu jako soutezit manualne
@Petr Hacker: "nezverejnil" bys kod treba az po soutezi? treba emailem atd. PHP sem videl naposled na stredni (dost davno) a tak bych chtel vedet, jaky sou finty a moznosti dnesnich koderu, ale vzhledem k tvym financnim nakladum, te nemuze zaujmout zadnejch par penez a ja do toho nechci vkladat zadnou 4mistnou raketu, obzvlast kdyz to nemam pro financni zisk :o) | |
| [24] Michal Smrčka admin | 19. 11. 2011, 22:36 |
Vite, clanek jsem puvodne psal proto, ze mi bylo lito techto lidi:
Ale jestli tu ma probehnout diskuze o tom, jak algoritmus optimalizovat, tak se tomu nebranim :) | |
| [25] mikiliki e-mail | 19. 11. 2011, 23:40 |
| BeNiSh - když je to k ničemu tak by jsi se o něj mohl podělit? :-) Klidně na mikiliki@seznam.cz | |
| [26] Grovik e-mail www | 20. 11. 2011, 03:08 |
|
Jak tak čtu diskusi. Povídání o vylaďování na milisekundy, je docela blbost.
Už jen proto, že skript je svou rychlostí závislí jak na konektivitě, tak momentální zátěži Aukra. Navíc osobně nechápu co chce "autor" vylaďovat. Skript prostě běží jak běží. Ladit se dá ještě tak něco v assembleru. Ale PHPko nebo třeba Python o moc rychlejší nebudou. Prostě jen snaha zaujmout. Mimochodem taky mám jeden skript. Dovede jak prohledat Aukro, dovede spolehlivě najít aukci. každopádně rychlost čehokoliv takového je odvislá od připojení, počtu průchodů atd. | |
| [27] Grovik e-mail | 20. 11. 2011, 04:20 |
|
Tak jak tu vidím ty prosby o skript...
Nejpozději po skončení soutěže, ale dost možná že i dřív ho zveřejním na svém Google+ profilu: https://plus.google.com/u/0/113911632314547030042/posts | |
| [28] BeNiSh e-mail | 20. 11. 2011, 10:11 |
| navrhuju po soutezi zorganizovat nekde v Pha hospodskej AUkroCON a tam bysme si vsichni porovnali svoje boty a zkusenosti =) | |
| [29] Michal Smrčka admin | 20. 11. 2011, 10:45 |
| BeNiSH Muzeme pozvat i programatory z Aukra a udelat chlastacku pod zaminkou programatorske session... ;) | |
| [30] Grovik e-mail | 20. 11. 2011, 11:07 |
| Do Prahy to nestíhám (mám i jiné starosti). Ovšem jinak bych to bral. Někdo z Plzně? | |
| [31] Jenda | 20. 11. 2011, 11:13 |
| Grovik: Jo, nějaká šance, že bych tě pozval do hospody a vytáhl tam z tebe ten script? :)) | |
| [32] georgik | 20. 11. 2011, 11:14 |
| Grovik: Jo jeden plzenak by se tu nasel;) Tak kdy zajdem na pivko probrat sva reseni :) | |
| [33] Grovik e-mail | 20. 11. 2011, 13:36 |
|
Dneska píšu nový skript... poněkud přepracovávám nakupování.
Tam je podle mě největší problém. Totiž detekce aukce, ať je jaká chce je strašně moc závislá na konektivitě a vytíženosti Aukra. | |
| [34] Petr Hacker e-mail | 21. 11. 2011, 00:56 |
| To Grovik: dělat to přes http by dělal jen velkej blbec. U http jak píšeš je to závislé na vytíženosti a konektivitě a opravdu žádné optimalizace nemají smysl. A divil by ses, ale na něco je opravdu rychlejší eregi_replace, na něco preg_match a na něco prosté str_replace. A na tomto nějaký čas naženeš. Taktéž je někdy vhodné použít if a někde switch. A takto můžu pokračovat do nekonečna. Ale pokud si myslíš, že to optimalizovat nejde, pak si asi nikdy nepsal nic velkýho. V době, kdy jsem dělal pro centrum.cz jsme optimalizovali PHP do poslední mikrosekundy - při daném počtu návštěv to dělalo obrovskou zátěž... | |
| [35] genicka e-mail | 21. 11. 2011, 12:33 |
| Nerozumím řeči vašeho kmene, ale kluci programátorští, jestli někdo z Vás má doma iRobota z téhle soutěže a kvůli kabelům a podobným věcem co tam má by se mu stejně nehodil, tak mi ho můžete věnovat. Uděláte dobrý skutek před Vánoci a já vás budu velebit. Můj mail si tu určitě nějak vyjedete. Díky předem | |
| [36] mi-llan | 21. 11. 2011, 13:03 |
| Pro ty co se nezučastnili loňské vánoční akce aukra, kdy bylo každý den akce vystaveno i několik desítek zboží za velmi vyhodnou cenu. Běžný uživatel čekal (číhal) u PC, ale smula. Několik uživatelu se doslova podělili o ceny a byli schopni přihodit i na několik aukci takřka ve stejnou sekundu. Dokonce vznikly i takové paradoxy že v aukci byl jen 1 kus nabízeného zboží a i 5 vyhercu (robotu). A co na to tehdy aukro ? NIC počkali rok upravili system aukra že již nevidíte vyherce, nabrali Junory povolili aukce neregistrovaným a vydělavají dál. | |
| [37] 1Akzuz1 e-mail | 21. 11. 2011, 13:07 |
| Ahoj,prosím Vás jak na aukru vyhledám nový registrované lidi + aukro plus? Děkuji :-) | |
| [38] lenulka | 21. 11. 2011, 13:28 |
| jste fakt dobří,strávila jsem na aukru přes 3 hodiny hledáním ipadu a vy tady píšete že to máte do pár sekundy vyhledaný. lituji že nejsem programátor, hledání vzdávám...ač jsou ceny velmi lákávé. | |
| [39] radka e-mail | 21. 11. 2011, 13:33 |
| Tak to je mazec a díkec:-) takže ani nezkoušet :-( | |
| [40] jazyk | 21. 11. 2011, 14:04 |
| Muzu se zeptat v jekem jazyce to pisete? Php, perl, ..? | |
| [41] Lucie e-mail | 21. 11. 2011, 14:08 |
| jsem na tom podobně jak lenulka.....bohužel programátorské geny jsem nepodědila..takža bye bye....a všichni nadaní programátoři:UŽIJTE SI TO!!:) | |
| [42] Grovik e-mail | 21. 11. 2011, 14:35 |
|
Petr: To by mě fakt zajímalo jak taháš z Aukra data když ne přes HTTP dotazy. Protože jiný další protokol co Aukro dovede je HTTPS. Ale to je jaksi mimo mísu.
Pochopitelně jde komunikovat s HTTP serverem pomocí telnetu.. ale to zase o tolik rychlejší není. Za to je to o dost pracnější. Ohledně optimalizace PHP. Ano jistě je mezi funkcemi rozdíl. Na druhou stranu. Nejužší hrdlo je stále konektivita. Pokud je mezi zasláním požadavku a hlavičkou zpoždění 1-2 sekundy tak to prostě rychleji nepůjde. | |
| [43] jazyk | 21. 11. 2011, 14:53 |
| Muzu se zeptat v jekem jazyce to pisete? Php, perl, ..? | |
| [44] Luk | 21. 11. 2011, 15:08 |
| No vidíte a proto jsem si pronajmul v Polsku server a to přímo ve městě ve kterém hostuje Aukro, takže odezvu na jejich servery mám do 2-3 ms :) | |
| [45] Luk | 21. 11. 2011, 15:12 |
| Když k tomu připočtete, že program na porovnávání záznamů mám psaný v C++ přímo pro linux, takže žádný interpret to nebrzdí, tak to zvládá dělat i přes 500 dotazů za vteřinu... | |
| [46] DQRQW e-mail | 21. 11. 2011, 16:06 |
| ZMRDI HRAJTE JAKO OSTATNÍ A NE PODVODEM | |
| [47] Petr Hacker e-mail | 21. 11. 2011, 16:06 |
|
To Luk: tak to jsi teda "borec" :)
500 dotazů za vteřinu = znamená 500 aukcí za vteřinu? O něco málo více jsem měl předtím, než jsem začal optimalizovat :D | |
| [48] Luk | 21. 11. 2011, 16:12 |
| Ano, 500 aukcí za vteřinu nebo uživatelů za vteřinu, záleží co se tomu pošle jako vstup. Když porovnám rozdíl mezi UID zadavatelů těch minulých aukcí, tak by celý proces nalezení cílené aukce a přihození neměl zabrat více než ty 3 vteřiny, no uvidíme :) | |
| [49] DQRQW e-mail | 21. 11. 2011, 16:34 |
| ZMRDI HRAJTE JAKO OSTATNÍ A NE PODVODEM | |
| [50] Jeanlagi | 21. 11. 2011, 16:41 |
| Skvělá diskuze. Ověřování lidského uživatele při dotazu na vás. | |
| [51] Petr Hacker e-mail | 21. 11. 2011, 16:42 |
|
To Luk: tak ty musíš být jeden z těch bláznů, co to dělají pořád přes http, viď? Na rovinu? Nemáš šanci... Když už vy amatéři pochopíte, že tady nejde o sekundy, ale milisekundy? Taky soutěží borci, kteří přímo tu aukci nacházejí v rozsahu 300 - 500 milisekund... (zrovna včera jsem se jedním takovým kolegou bavil a chlubil se mi, že už se dostal skoro na 320 ms). Žádné sekundy :D
Fakt mě to baví :D :D :D | |
| [52] Luk | 21. 11. 2011, 16:55 |
| Ano, 320 ms lze, to je jeden dotaz, v tomhle případě už tedy ale nejde o "zkoušení aukci", ale opravdu o nabourání databáze skrze SQL injection, za což by mohl na pár let za mříže, pokud by se Aukro bránilo... | |
| [53] Luk | 21. 11. 2011, 16:57 |
| To co tady deláme my ostatní je plně legální automatizace lidského faktoru, nijak nemodfikujeme vstupní data a nemeníme SQL dotazy, pokud jim tam našel opravdu SQL Injection tak je to opravdu borec a klobouk dolů, ale zahrávat si s něčím takovým, to už chce pořádnou odvahu... | |
| [54] A přes co? | 21. 11. 2011, 16:58 |
| Petře, můžete tedy jen říci, přes co, když ne přes HTTP, provádíte svůj skript Vy? (nejsem programátor, ale zajímá mne srovnání) | |
| [55] Luk | 21. 11. 2011, 17:07 |
| To by mě taky zajímalo, jelikož získat data ze stránky jinak než strze http nejde a i kdyz se připojíš přes telnet, tak stejně to jde stále pres http akorát v textové podobě. jako chápu, že nějaký administrátor aukra co přijde k serveru píchne tam usb flash disk a ty data si stáhne, tak že ten to přes http získávat nemusí... Ale jinak opravdu by mě to zajímalo, navíc rychlost těch požadavků přes síť je limitovaná právě tím fyzickým faktorem přenosového média, když crackuješ hesla přes internet tak neuděláš 10 000 000 kombinací za vteřinu, jak na localu... | |
| [56] Petr | 21. 11. 2011, 17:23 |
|
Ahoj bylo by možné udělat robůtka co vyhledá emailové adresy uživatelů na aukru a jménem aukra je pozve k návštěvě a vyzkoušení portálu auktiva.cz ?
Nejen že by to byl skvělej for, ale ještě by to pomohlo všem kteří hledají alternativu k aukru, nebo skutečný aukční portál, jelikož aukro se stává eshopem | |
| [57] Kolemjdoucí | 21. 11. 2011, 18:28 |
| tak kolik už máte kávovaru? :) není čas co, když to ručně prohledáváte :D :D Script?! doesn´t work? :D | |
| [58] Grovik e-mail | 21. 11. 2011, 18:58 |
| Vzhledem k tomu že můj skript pracuje i jinak než podle uživatelů tak jsem v pohodě ;-). Jen to trvá trošku déle :D | |
| [59] Kolemjdoucí | 21. 11. 2011, 19:06 |
| tak kolik už máte kávovaru? :) není čas co, když to ručně prohledáváte :D :D Script?! doesn´t work? :D | |
| [60] Luk | 21. 11. 2011, 19:21 |
| Já mám jeden... Já su spokojený :) | |
| [61] Jenda | 21. 11. 2011, 19:23 |
| Kolemjdoucí: Scripty natolik nefungují, že kvůli nim zrušili soutěž. :D | |
| [62] Grovik e-mail | 21. 11. 2011, 19:46 |
|
Jak jsem slíbil ukázka skriptu
http://blog.josefnemec.cz/2011/11/aukro-stoplo-ehm-soutez.html | |
| [63] Jenda | 21. 11. 2011, 20:02 |
|
Grovik: Měli by zaměstnat vás a podobně schopné lidi, ale pochybuju, že byste chtěl mezi těma neschopnýma polákama pracovat. :)
Ale ono se nejedná jen o tuhle akci, jakékoliv změny na aukru jsou doprovázeny výpadky, nefunkčností, atd. Prodejci by mohli vyprávět. | |
| [64] V e-mail | 21. 11. 2011, 20:08 |
|
Tak ja jako blbec ruco prosla par set stranek a vy takhle podvadite. To vam neni lito normalnich lidi? :-D
Ale pokud bych to mela hodnotit objektivne, tak GZ ze dokzete napsat neco takovyho :) A ted mi nekdo uvarte kafe, pac ten kavovar nikdy nedostanu :( | |
| [65] Luk | 21. 11. 2011, 21:46 |
|
To Grovik: Pěkný script, ale šlo by to i mnohem jednodušeji a rychleji, nač stahovat celý zdrojový kód stránky když můžem použít prvních 30B z adresy http://aukro.cz/company_icon_get_data_ajax.php?user=xxxxxx , která vrací adresu majtele účtu a v případě aukrem vytvořených účtů to je Allegro Group CZ.
Ke stahování stránky pak můžebe využít libcurl, což podle srovnávacích testů fopen vs. fsockopen vs. curl dopadl nejlépe (nejrychleji)... <?php function getFile($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RANGE, "0-30"); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $ret = curl_exec($ch); curl_close($ch); return $ret; } function checkUser($uid) { $s = getFile("http://aukro.cz/company_icon_get_data_ajax.php?user=" . $uid); if (preg_match("#<p>Allegro Group CZ, s.r.o.</p>#i", $s) || preg_match("#<!DOCTYPE html PUBLIC "-//W3C//#i", $s)) { return true; } else { return false; } } $uid = $_GET[uid]; if (!empty($uid)) { for ($i = $uid; !checkUser($i); $i++); echo "<a href=http://aukro.cz/listing/user.php?us_id=" . $i . " target=_blank>http://aukro.cz/listing/user.php?us_id=" . $i . "</a><br /><br />"; } ?> | |
| [66] Luk | 21. 11. 2011, 21:55 |
| A vzhledem k tomu, že UID uživatelů, které aukro registruje jsou téměř hned za sebou (tam bylo rozpětí ani ne 1000 UID), tak nám stačí počkat na UID zadavatele první aukce, ty zbylé pak najdeme během pár vteřin... | |
| [67] Grovik e-mail | 21. 11. 2011, 22:15 |
|
LUK: Máš recht. Tohle bylo na ukázku. Původně ten skript uměl i jinačí věci. Ale nechtěl jsem ho tak pouštět do světa. ;-). Blbců je všude plno.
Navíc tohle má výhodu, že to nejde zablokovat. | |
| [68] Necroman | 22. 11. 2011, 09:59 |
| Aukro na to slo pravdu hloupe zadavat nove aukce od novych uzivatelu. Stacilo, aby ne zadali novou akci pro soutez, ale zmenily kompletne popis existujici nastrcene aukce treba "Historie madarskeho truhlarsvi ve trech kniznich dilech" zadane treba uz pred tremi dny. Pokud se nikde neeviduje cas upravy aukci, tak by roboti meli prinejmensim trochu vice prace :) | |
| [69] Luk | 22. 11. 2011, 11:21 |
| To Necroman: To by taky šlo docela lehce obejít. Proti tomuhle je jediná ochrana (a stále jen částečná), za každým novým načtením stránky požadovat zadání captcha kódu - to do jisté míry script zastaví, ale zároveň to i dost znepříjemní život obyčejným uživatelům, kteří to budou muset opisovat taky. A nebo potom snímat počet požadavků za vteřinu a v případě, že toto číslo překročí třeba 1 / vteřinu z jedné IP adresy, tak tuto adresu automaticky přidat na dočasný banlist. Nicméně opět zde může nastat situace,kdy se nedopatřením na banlist dostane i běžný uživatel... | |
| [70] Necroman | 22. 11. 2011, 13:03 |
|
Luk: udelat jednoduchy load balancer, ktery vrati kazde IP adrese max jeden request za vterinu (obrazky a js, css nacitat bez omezeni)
Jen je problem, co s JSON/AJAX sluzbami, pres ktere si umim predstavit, ze nekteri podnikali utok ted pri "Aukro nadeluje". | |
| [71] Ji®in e-mail | 22. 11. 2011, 15:10 |
| Zdravim... Petr Hacker. Muzem mi prosimte tedy rict, pres jaky protokol jsi to delal ? Docela me to zajima. Sedime tu 2 studenti FUT VUT 3 rocnik a nechapem,jak jinak jsi to delal. | |
| [72] Necroman | 22. 11. 2011, 15:29 |
| Mam stejny dotaz, jak to tedy delal - me napadaji jen AJAXove sluzby, ktere by mu mohly neco rozumneho vracet? Pokud nam tedy jen nevesi buliky na nos :) Jako vystudovaneho matfyzaka by me to take zajimalo. | |
| [73] georgik | 22. 11. 2011, 15:46 |
| Jeste by mohl taky pouzivat aukrovske WebAPI, pres webove sluzby, ale to je taky http... | |
| [74] Dozz | 22. 11. 2011, 15:55 |
| toGeorgik: Taky si myslím. Odpověď by mě zajímala také. | |
| [75] Luk | 22. 11. 2011, 16:00 |
| Všechno je to http, http je služba serveru na portu 80 a v případě, ze Aukrovský server ty data ani jinak neposílá, tak ani není jiný způsob jak je získat... Podle toho co tu napsal šlo nejspíš jen o nějakého "všeználka"... | |
| [76] Dozz | 22. 11. 2011, 16:01 |
| toGeorgik: Taky si myslím. Odpověď by mě zajímala také. | |
| [77] Dozz | 22. 11. 2011, 16:04 |
| to Luk: ...používal ty web. služby Aukra vzal to tak, že SOAP je protokol,a nezamyslel se nad tou komunikací... | |
| [78] Petr Hacker e-mail | 22. 11. 2011, 16:13 |
|
Zdravím pánové,
původně jsem to nechtěl odhalovat (a v podstatě ani nyní nebudu), protože je to know-how (i když teď už vlastně k ničemu). SOAP to nebyl - ten jsem ve skriptu využíval pouze na zakoupení předmětu. Nicméně ty, které to opravdu zajímá a dají si tu práci zkusím navést: zkuste si zjistit, na jakých serverech allegro provozuje databáze a zkuste zapojit třeba port scanner... Až najdete danou službu, zkuste si zjistit verzi a myslím, že to bude všem jasné. Vyžaduje to trochu znalostí a zkušeností, ale tato nápověda je myslím až velmi vypovídající... Navíc jsem nebyl sám, kdo na toto přišel, takže to nebude až taková věda... PS: port 80 to určitě není :D | |
| [79] Qwe | 22. 11. 2011, 16:20 |
| Petr Hacker: Oracle na HP no a co? Jak mam vedet IP tech serveru? | |
| [80] Qwe | 22. 11. 2011, 19:00 |
| Petr Hacker: Navic jestli databazove servery maji verejne pristupne, tak jsou pekne hloupi. | |
| [81] Luk | 22. 11. 2011, 22:50 |
| To je pravda, já co jsem zatím pracoval ve 2 firmách a všude byly databázové servery pouze v lokální síti a přístupné z venčí pouze skrze VPN... Nikdy taky nebyl problém s nějakým narušením bezpečnosti... | |
| [82] Jirka e-mail | 25. 11. 2011, 23:41 |
| Opravdu bych se přimlouval dát ten script vydražit na Aukro. To by byla prča!!!! | |
| [83] pohled zhora | 05. 12. 2011, 19:13 |
| Kdyby aukro mělo kvalitní programátory, tak jde sedět pan Petr | |
| [84] Petr Hacker e-mail | 06. 12. 2011, 16:45 |
|
Ty seš nějakej chytrej :)
Nicméně tě můžu ubezpečit, že i kdyby měli (jakožto že nemají) dobré programátory, tak by se nedělo nic. Kde není důkaz není zločin... A to nejenom v té naší banánové republice... | |
Přidat komentář
Kategorie blogu
Twitter feed
- Michal Smrčka:
Včera jsme zahráli trochu jazzu na konferenci Vítejte u nás ve Znojmě http://t.co/ehfj7iHM . Btw zdravím @zitbrno ;)
18.5.2012 22:47 - Michal Smrčka:
@MichalCerny To se mi jednou ve stavu opilosti taky stalo. O to horší, že více než 10 tisíc Kč peněženka odmítá a nejde zavřít
18.5.2012 22:46 - Michal Smrčka:
Rathův obhájce je Adam Černý - muž, který žaluje Lupu kvůli rozkrývání kauzy Tojecool. Náhodička
17.5.2012 07:57
@michalsmrcka