A múltkor már felvázoltam egy lottó projektet, amikor az interneten szabadon fellelhető lottószámokból lehet weboldalt építeni. Azóta már bőven túlhaladtam az akkori tudásom, az adatbázisokat is kiválóan használom, és a StudiCore segítségével sokat gyakoroltam az SQL nyelv használatát is.
Tehát a lottóprojekt most már adatbázis alapú. Vagyis lenne, mert végül nem ezt kezdtem el, hanem egyelőre félretettem. A fő oka az, hogy a lottós weboldalt nehéz monetizálni, a Google reklámokat tilos kitenni rá, Magyarországon meg nincs olyan lottós cég, aki jutalékot fizetni a vásárlókért. Az amerikai lottósorsolások meg viszonylag kevés magyar látogatót érdekelnek.
Szóval más projektet választottam, amiről a következő bejegyzésben fogok írni. Ebben most megmutatom azt a példaszöveget, amit a lottós weboldal sorsolások aloldalaira írtam. A koncepció szerint ugyanis minden húzásnak külön aloldala lesz, erre kerül fel az alábbi szöveg. Még nem teljes, kb. a végtelenségig tudnám fokozni.
Elkezdtem átírni változónevekkel, de aztán visszacsináltam, talán jobban érthető így, ahogy van. Nézzük a szöveget, aztán utána elmondom, mit, hogyan terveztem vele pontosan. A 2016-os éve egyik sorsolását választottam a tartalom alapjául.
Tartalomjegyzék
Lottósorsolás aloldalak példaszövege
A 2016. év 34. hetében (2016.08.27.) is {kihúzták|kisorsolták|közzé tették|sikeresen kisorsolták|a tévénézők előtt sorsolták ki|a tévézők előtt húzták ki|egy showműsor keretében húzták ki|a Szerencsepercek keretében sorsolták ki|közjegyző jelenlétében húzták|szombat este húzták ki|szombaton sorsolták|szombaton húzták ki a Szerencsepercekben|szombaton sorsolták a tévés élő műsor keretében|a nézők izgatott pillantásai által övezve sorsolták ki} az ötöslottó {heti nyerőszámait|aktuális számait|aktuális nyerőszámait|legújabb nyerőszámait|pénzt érő számait}. A {kihúzott|kisorsolt|Fortuna által kiadott|Fortuna által a játékosoknak juttatott|nyertes|nyerő|pénzt érő} számok {a következőek voltak|listája|a húzás sorrendjében|a következőek|itt láthatóak}: 22, 29, 53, 62, 74.
{Találatok és nyeremények|Nyeremények|Találatok száma, kifizetett összeg|Nyertesek és nyeremények|Nyertesek|Eredmények|A húzás nyertesei|A sorsolás nyertesei}
{A Szerencsejáték Zrt. közlése|A sorsolás|A heti sorsolás|A húzás|A lottóhúzás|A kihúzott számok|A kisorsolt számok|Az eredemények} alapján a 2016/34. héten {a következő|az alábbi|a soron következő|az itt listázott|az itt mutatott|az itt látható|az itt megjelenített|az itt felsorolt|az alábbiakban listázott|az alábbiakban mutatott|az alábbiakban látható|az alábbiakban megjelenített|az alábbiakban nyereményosztályok szerint csoportosított|az alábbiakban a nyereményosztályok alapján csokorba gyűjtött} {nyereményeket|eredményeket} érték el {a játékosok|a szerencsések|a szerencsés játékosok|Fortuna kegyeltjei|a jól tippelők|a jót tippelő játékosok|a megfelelő számokat megjátszó játékosok|a jó számokat választó játékosok} :
- {2 találatos szelvényből|kettes találatból|két találatos szelvényből|kettesből|2 találatosból|két találatosból|két találatot elért szelvényből|olyan szelvény, ahol két találatot értek el,|olyan szelvény, ahol pontosan két számot találtak el,} 73192 {|darab|szelvény|eset} volt, ezek {szelvényenként|egyenként|mind|egyesével|nyerő szelvényenként} 1405 forintot {hoztak|fizettek|jelentettek|értek|juttattak|adtak|biztosítottak|osztottak vissza} {a játékosoknak|a nyerteseknek|a jól tippelőknek|a szerencsés tippelőknek|a szerencsés játékosoknak|Fortuna kegyeltjeinek|azoknak, akikre Fortuna rámosolygott|azoknak, akik a helyes számokat tették meg}. A Szerencsejáték Zrt. {a kettesekre|a két találatosokra|a két találatokra|a nyereményosztályban|a nyereményosztály szelvényeire|a két találatos szelvényekre} így összesen 102834760 forintot {fizetett ki|fizetett vissza|juttatott el a játékosoknak}.
- A 2700 darab 3 találatos mindegyiket 19615 forintot hozott a konyhára, így a nyereményosztály teljes kifizetése elérte a 52960500 forintot.
- 4 találatos szelvényből 48 akadt, a szerencsés nyertesek mindegyike 1042055 forinttal lett gazdagabb. A 4 találatosokra a Szerencsejáték Zrt. így összesen 50018640 forintot fizetett ki.
Ha 5 találatos = 0, akkor
- 5 találatos sorsjegy nem volt, egyetlen szerencsés játékos sem vihette haza a heti főnyereményt.
Ha 5 találatos > 0, akkor
- 1 darab 5 találatos szelvény érkezett be a héten, a szerencsés játékos 573765355 forintot nyert a szerencsés feladással.
A 34. héten a fentieknek megfelelően összesen 75940 játékos ért el találatot, összesem 205813900 forintot nyerve.
2016 korábbi ötöslottó sorsolásai
- hét számaival együtt a 2016. év során összesen 170 számot húztak ki. Az év folyamán eddig
- 2 darab 5 találatos szelvény volt, összesen 2312312312 forintot nyerve ezzel a játékosok
- 232 4 találatos szelvényt húztak ki, összesen 32324234243 forint nyereménnyel
- a 3 találatos szelvények száma 32423424, így a játékosok összesített nyereménye ebben a nyereményosztályban már 3432442 forint
- a 43242343 darab 2 találatos szelvénnyel pedig 3242423423 forinttal lettek gazdagabbak a helyesen tippelők
A nyerőszámok eloszlása is rendkívül vegyes képet mutat, hiszen különösebb trendet nem lehet kiolvasni belőlük. Az 2016. év 34. hetével együtt a következő számok kerültek kihúzásra, a számok mögött jelzett alkalommal:
- 23: 3 számhúzás (1. hét, 23. hét, 33. hét)
- 21: 2 számhúzás (4. hét, 33. hét, 21. hét)
2016-os lottónyeremények
A Szerencsejáték Zrt. adatai szerint a hetente megnyert nyeremények a következőképpen alakultak:
- 23. hét: 31313123 nyertes szelvény, 23422424 forint összes nyeremény, átlagosan 32424324 forintot nyert egy nyertes játékos
A példaszöveg magyarázata
A szöveg tele van dátumokkal, számokkal, más szóval: adatokkal. Ahol például ezt írom: A 2016. év 34. hetében (2016.08.27.), oda a programozással nagyon könnyen be lehet illeszteni az aktuális adatokat. Tehát veszem a meglévő adatbázisom, és a különféle aloldalak létrehozásakor mindig az aktuálisat használom fel:
- A 2016. év 34. hetében (2016.08.27.)
- A 2016. év 35. hetében (2016.09.03.)
- A 2016. év 36. hetében (2016.09.10.)
Gondolom ez érthető. A kapcsos zárójelekkel jelölt részekből mindig egy elemet kell felhasználni, így a szövegnek végül sok millió lehetséges változata lehet. Ha vesszük ezt a mondatot:
A {kihúzott|kisorsolt|Fortuna által kiadott|Fortuna által a játékosoknak juttatott|nyertes|nyerő|pénzt érő} számok {a következőek voltak|listája|a húzás sorrendjében|a következőek|itt láthatóak}: 22, 29, 53, 62, 74.
akkor ebből a következő változatokat (is) létre lehet hozni:
- A kihúzott számok a következőek voltak: 22, 29, 53, 62, 74.
- A Fortuna által kiadott számok itt láthatóak: 22, 29, 53, 62, 74.
- A pénzt érő számok a húzás sorrendjében: 22, 29, 53, 62, 74.
- A nyertes számok listája: 22, 29, 53, 62, 74.
és így tovább, ahol persze az öt szám a végén mindig az aktuális hét nyerőszámait jelenti.
Megoldandó feladat még a névelők (a/az) illesztése a következő szóhoz, ezt egy egyszerű vizsgálattal meg lehet tenni, csak venni kell a soron következő szó első karakterét, és meghatározni hozzá a megfelelő névelőt. Ez sem nagy feladat.
Az adatbázis felhasználása a következő részeknél jelent előnyt. Minden sorsolási aloldalra érdemes betenni statisztikákat, hiszen a húzásokat feldolgoztunk, és rendelkezésünkre áll az összes szám az 1950-es évekig visszamenőleg. A teljesség igénye nélkül, én a következőket írtam be:
- Az aktuális év korábbi húzásainak statisztikája
- Az elmúlt évek ugyanezen hetének statisztikái
- Az adott évben kihúzott nyerőszámok eloszlása
- Az előző években ugyanazon héten kihúzott számok összehasonlítása
- A nyeremények teljes összege heti, havi, éves lebontásban, összehasonlítás az előző évek hasonló időszakaival
- Legnagyobb és legkisebb nyeremények
- és így tovább
Kis ötletességgel végtelen mennyiségű tartalmat lehet generálni. Csak találni kell egy ötletet, az alapján elkészíteni a prototípust, majd létrehozni az adatbázisból a változatait. Így nem csak az egyes sorsolásoknak lehetnek aloldalai, hanem a nyerőszámoknak (a 2-es szám teljesítménye a lottóhúzások során) vagy más adatoknak is.
Szintén lehet magazincikkeket generálni a lottóhúzások témakörében, csak meg kell írni a szöveg egy példányát, meghatározni a behelyettesíthető szinonimákat és szavakat, és utána tömegesen létrehozni az aloldalakat. Például én ilyen magazincikkeket csinálnék:
- Tényleg jobban teljesítenek a páros számok a lottóhúzások terén?
- Valóban jobban megéri páratlan számokra fogadni?
- A prímszámok többször jönnek ki a sorsolás során?
- és így tovább
A Google számára minden tartalom releváns, ha lottóról szól, így elméletileg akár minden számmal is meg lehet futtatni ugyanazt a témát? Pl. Tényleg az 1-es szám a legjobb választás az ötöslottón? Tényleg a 2-es számot érdemes választani az ötöslottón? Stb.
Az automatizált tartalomgenerálás előnyei és hátrányai
Az ilyen mesterségesen létrehozott cikkeknek és aloldalaknak gondolom megvan már, mik az előnyei. Viszonylag kis energiával lehet létrehozni brutál mennyiségű tartalmat. A StudiCore Java tanfolyamának elvégzése után az ilyen automatizmusok megírása, a CSV és más források feldolgozása és az adatbázisok kezelése meg sem kottyanhat. A prototípus-szövegek elkészítéséhez kell egy kis idő, de aztán programozással szinte végtelen számban újra fel lehet őket használni. A legenerált tartalom pedig látogatókat hozhat, ők pedig pénzt jelentenek.
Érdemes azonban észben tartani azt, hogy a Google kereső vagy a mögötte lévő motor (engine) folyamatosan fejlődik. Mivel a Google anyacégének, az Alphabet Inc.-nek a tavalyi bevétele 161,9 milliárd dollár, kb. 50 billiárd forint volt, így el lehet képzeni, mekkora bődületes erőforrása van a legtöbb pénzt termelő keresője fejlesztésére.
A Google kereső mögött mesterséges intelligenciával felvértezett, öntanuló algoritmusok állnak, amelyek elvileg képesek felismerni a különféle mintákat. Ez a tapasztalatok alapján a magyar nyelven korlátozott mértékben igaz, mivel magyarul sokkal kevesebb tartalom van az interneten, amiből a Google robotjai tanulhatnának.
Az ilyen mesterségesen legenerált tartalmak tehát működnek, de lehet, hogy egyszer a Google elég okos lesz ahhoz, hogy észlelje a trükköt, és többé ne hozzon látogatókat. Vagy már most is érzékeli, de mivel nincsenek hasonló cikkek a témában, így a mi projektünkhöz viszi a látogatókat.
A magyar interneten még nagyon kevés szöveg van. Bár nem úgy tűnik, de ez igaz, akár már egy-egy jobb cikkel is könnyen lehet dobbantani. Az automatizált oldalak létrehozásakor tehát lehetőleg minél jobban meg kell közelíteni az ember által írt tartalmak minőségét, így a Google robotok nehezebben ismerik fel az automatizmust, vagy ha fel is ismerik, a kiváló minőség miatt elfogadják azt.
Az ötlet amúgy nem új, a vezető amerikai hírportálokon olvasható időjárás, tőzsdei és más hírek pont hasonló módon készülnek. Ezek az adathalmazok alkalmasak a gépi feldolgozásra, és nyilván nem ember fogja megírni a több ezer hasonló cikket. Meglepődnétek, ha kiderülne, a hírportálok anyagainak mekkora részét írják scriptek 🙂
Ezeket csak azért írom le, hogy mindenki tisztában legyen a kockázatokkal és a rá váró feladatokkal. És legyen több projekt, hogy ha egyet bedönt a Google, akkor ne nullázódjanak le a bevételeink. A következő cikkben megmutatom, hogyan indítottam el az aktuális projektem.