Lottó projekt 1. rész: koncepció

Most, hogy már megismertem a fájlkezelést a StudiCore online Java tanfolyam segítségével, itt az ideje nekiesni a különféle adatbázisoknak, és tesztelgetni, mit bír a Google. Első feladatként egy ötöslottó-archívum weboldal felépítését tűzöm ki célul, kifejezetten gyakorlási céllal.

Nem csak a Java programozást fogom gyakorolni, de a keresőoptimalizálást is. Utóbbi ugyanis nem olyan egzakt tudomány, mint a programozás, és gyakran vannak másképp a dolgok, mint ahogy arról a hivatalos infó szól.

Ebben a bejegyzésben leírom a lottó projekt koncepcióját, azokat az eszközöket használva, amelyeket már ismerek. Lesz majd ennél jobb megoldás, és meg is tudnám keresni az interneten, mit, hogyan kell csinálni, de gyakorlás közben akarok rájönni a dolgokra, majd később továbbfejleszteni az eredeti ötletem. Az is dokumentálva lesz itt, a blogon, és szerintem érdekes lesz visszaolvasni, hogyan fejlődök menet közben. Nekem mindenképpen 🙂

Ennek megfelelően a weboldal most egy statikus adathalmaz lesz, fixen legenerált html fájlokkal. A dizájnon sem sokat fogom törni magam, esetleg igyekszem reszponzívra készíteni. Most még nem használok fel adatbázist, tehát az adatokat sem onnan olvasom ki. Nem fog frissülni az archívum sem, tehát egy kiválasztott dátumot megelőző ötöslottó húzások szerepelnek majd benne, nem követi a legújabb eredményeket.

Később az egészet át lehet tenni adatbázis alapúra, és beállítani, hogy a lottószámos forrás frissülése után pár perccel egy automata feladat beolvassa az új adatokat, és elkészítse az aktuális sorsolás adatlapját.

Nem is biztos, hogy ennek az oldalnak lesz frissítése, ugyanis elsődlegesen nem monetizációs célokból készül. A Google Adsense tiltja, hogy szerencsejáték tartalmú oldalra kerüljenek ki a Google hirdetések, Magyarországon pedig nincs Amazon affiliate. Vagy van, de igazából a kutyát sem érdekli.

A külföldi lottó oldalak affilaite-jét meg lehet próbálni, de ez sem hoz majd nagy eredményeket. Viszont számos SEO trükköt ki lehet próbálni, és tesztelgetni, meddig lehet elmenni.

Az adatok forrása

Ez a tesztoldal kifejezetten az ötöslottó húzásaira koncentrál, amihez a többi lottójáték statisztikái mellett a Szerencsejáték Zrt. forrást is biztosít itt: https://bet.szerencsejatek.hu/jatekok/otoslotto/sorsolasok#downloads

Ezen az aloldalon az ötöslottó eddigi összes nyerőszáma látható, a letöltés dátumáig bezárólag. XLS, CSV és HTML forrás áll rendelkezésre, én a CSV-t fogom használni: https://bet.szerencsejatek.hu/cmsfiles/otos.csv

otoslotto-szamok.jpg

A fájlt megnyitva, 16 oszlop látható benne.

1. év

2. hét

3. húzás dátuma

4. 5 találatosok darabszáma

5. 5 találatosok nyereménye

6. 4 találatosok darabszáma

7. 4 találatosok nyereménye

8. 3 találatosok darabszáma

9. 3 találatosok nyereménye

10. 2 találatosok darabszáma

11. 2 találatosok nyereménye

12. első nyerőszám

13. második nyerőszám

14. harmadik nyerőszám

15. negyedik nyerőszám

16. ötödik nyerőszám

Tartalomgenerálás

Ez az adatbázis a számmániások számára maga a mennyország, adathegyek mindenfelé. Ma 2019.12.08-a van, és eddig a pillanatig 3275 sorsolás adatait tartalmazza, az elsőt 1957. 10. hetéből. A heti találatok darabszámáról és azok nyereményéről csak 1998. 1. hetétől van adat, de ez is hamarosan 22 év adatmennyiségét jelenti.

Na itt adja magát a dolog, hogy érdemes minden sorsolásnak egy adatlapot létrehozni. Ezeket fel kell tüntetni az öt számot, később az elért találatok számát, és a nyereményeket. Mivel adat van dögivel, így lehet tartalmat is generálni. Lehet például minden sorsolás alatt megmutatni az előző évek ugyanazon hetének adatait, külön jelölve az egyezéseket.

Lehet írni, hogy az adott héten eddig mennyi pénzt nyertek a játékosok az évek alatt, ezt találatokra bontva, majd maximum és minimum értékeket mutatni. Meg lehet nézni, hogy az aktuális héten kihúzott 5 számot mikor húzták még ki. 4-et hányszor húztak már ki belőlük, ezekkel mekkora nyereményt értek el. És így tovább.

Az egészet folyószövegbe lehet foglalni, melyhez elkészítek egy szép hosszú szöveget, és annak tartalmában az egyes szavakat a szinonimákkal helyettesíteni, így hozva létre véletlenszerűen létrejövő szövegeket milliónyi változatban. A Google elvileg mesterséges intelligenciával és tanuló algoritmusokkal képes felismerni az ilyen egyezéseket, bár nagyon sokszor magyar nyelven ezek egyáltalán nem működnek. Itt lesz az alkalom megnézni, mit nyel be a Googlebot, és mit nem.

A Bootstrapnak vannak szép, színes grafikonjai, ezekkel nagyon jól fel lehetne dobni az oldalt. Nem hinném, hogy rögtön az első változatban megjelennek ezek, de én azon leszek, hogy minél hamarabb kikerüljön valami elfogadható változat, és folyamatosan kerüljenek fel a fejlesztések. Ez akkor sem baj, ha minden egyes html oldalak-generálás után fel kell töltenem több ezer html fájlt a webszerverre.

grafikonok.jpg

Keresőoptimalizálás

A keresőoptimalizálási rész sem lesz elhanyagolva a projekten, hiszen most azt tesztelem, hogy a monetizálható ötleteimet majd hogyan valósítsam meg ezzel a megközelítéssel. Csak ott nem az ötöslottó adatbázisát használom fel, hanem mást. De ez még arrébb van.

Elvégzek egy alapvető kulcsszókutatást, mely kifejezetten az ötöslottó nyerőszámokhoz és húzáshoz kapcsolódik, és ezeket felhasználom a tartalomgenerálás során. Most épp egy olyan listám van, amelyen 1225 kulcsszó található, persze ennek egy része a hatoslottóhoz, a heteslottóhoz és más játékokhoz kapcsolódik, ezeket törlöm majd.

A lista amúgy nagyon vicces, gondoltátok volna, hogy havonta átlag 10 ember keres rá arra, hogy „az ötöslottó nyerőszámait kérem”, míg 30 ember arra, hogy „5tös lotto számok”? Durva.

Lesznek az oldalnak fő kulcsszavai, ezeket használom majd a meta címekben kiegészítőként. A többi kulcsszó lesz a kiegészítő, ezeket a keresések száma alapján tovább bontom. A több keresést kapó kifejezéseket félreteszem a kategória- és gyűjtőoldalakra, és a kisebbeket pedig beteszem ezekre a sorsolásos oldalakra.

Követem a klasszikus SEO szabályokat, a kiegészítő kulcsszó benne lesz az aloldal SEO címében és leírásában, a szövegben és néhány címsorban. Hogy még pontosan hol, azt addigra eldöntöm. A Google elvileg már ezeket a trükköket sem venné be, de saját szememmel láttam, hogy mégis, így most ezt is tesztelni lehet nagy mennyiségű adaton.

Oldaltérképeket kell generálni, ezeket beküldeni a Google Search Console felületén, és blogot is lehet készíteni. A blogbejegyzés mondjuk szólhat az egyes nyerőszámokról, ahol ismét generált tartalommal lehetne bemutatni az adott szám teljesítményét a sorsolásokon.

Levonható tanulságok és eredmények

Számos dolgot várok ettől a projekttől, levonható tanulságokat és eredményeket egyaránt. Az első, hogy készségszinten tudjam használni a fájlkezelést Java-ban, majd ehhez jön még az adatbáziskezelés. Lesz alapszintű szerver ismeretem is, most a cron jobokról még csak hallottam, de nem is tudom, hol lehet beállítani az automata feladatokat.

Aztán ott a Bootstrap, amellyel majd a weboldalkészítés során jól megismerkedem. Le tudok vonni egy csomó SEO következtetést, és azt is látom, hogy egy vadiúj projektnél generált tartalommal mire lehet menni. Mennyi idő kell a Google számára, hogy indexelje az aloldalakat? Mennyit fog indexelni a több ezer aloldalból, mennyi idő alatt? Mennyi forgalmat hoz az oldalra? Meg lehet hekkelni a Google mesterséges intelligenciáját magyar nyelven?

Mekkora terhelés éri a szervereket? Képet egyelőre nem tervezek használni, így próbálom minél kisebbre venni az adatforgalmat, és a szerverek terhelését is. A majdani adatbázisok mennyire fogják leterhelni a tárhelyet, elég lesz-e olcsóbb shared hosting, vagy VPS-t kell bérelnem?

Lehet-e generált tartalommal backlinkeket gyártani a projekthez? Hiszen, ha már van egy tartalmam, és a hozzá tartozó generátor program, akkor létrehozhatok új változatokat tízes, húszas csomagokban, és feltölthetem ezeket saját oldalakként elszórva a világhálón: blog.hu, wordpress.com, blogger.com stb. Így nagyon könnyen lehet a projektre mutató linkeket is létrehozni, persze csak lassan és fokozatosan, de a Google vajon beveszi-e ezt is? Lehet a már stabil szintre beállít forgalmon lódítani vele, vagy épp ellenkezőleg, bezuhan tőle a projekt?

Számomra ezek a kérdések mind izgalmasak, melyeket csak kis léptékben tudtam eddig kipróbálni. Mindig a programozó volt a szűk keresztmetszet, de majd erről is írok egy külön blogbejegyzést. Addig folytatom a StudiCore rendszerében a programozás tanulást is, a lottó projektről pedig rendszeresen beszámolok itt.