padisah blogja

közvetlen-állások a nginx-en

Egy korábbi posztban is javasolták, ezért végül átálltam én is az nginx előtétszerverre.

közvetlen-állások

A fő motivátor az volt, hogy a Let's Encrypt-es certificate bot nem tud a Tomcat alá automatán certificate-et cserélni, és manuálisan is nagyon macerás volt, főleg hogy az eltelt 3 hónapok alatt rendre elfelejtettem hogy kell csinálni...

(hiába az évek, meg az elgurult Cavinton)

Nginx alá viszont tud, és manuálisan is sokkal egyszerűbb.

Tehát most az oldal működik http-vel és https-el is, az nginx továbbít a localhost-on futó http Tomcat-re.
Ja, és mindez Amazon VPS-en, upgradeltem egy T2 instance-re, amit előre egy évre kifizettem, ezért most már csak a crawler-ek moderált költsége jelenik meg minden hónapban.

Ötletek foglalkozás nevek modellezésére

A logokat elemezve azt látom, hogy viszonylag sok olyan oldalt dobok el, amelyek állások, de a rendszer nem talál benne hihető foglalkozás nevet.

Ennek sokszor az az oka, hogy tényleg nincs is, de lehet hogy a megközelítésem hibás. Már azon is gondolkodtam, hogy esetleg nem kéne foglalkozásnevet keresni, ugyanakkor az egy fontos kereső kritérium, a kivont tartalom meghatározó, kiemelt eleme hogy milyen foglalkozásra írták ki az állást.

A mostani modellben van a foglalkozás fő megnevezése, tehát például az hogy fejlesztő. Ehhez a fő megnevezéshez társulhatnak minősítő jelzők (qualifier), tehát pl az hogy jáva, php, c# etc.

https - közvetlen állások

A tegnapi napon, éjszakába nyúló küzdelem eredményeképp az oldal már elérhető a biztonságos módon is:
biztonságos közvetlen állások

Tartalmilag ugyanaz mint a nem-biztonságos.
Igazából azért csináltam az egészet, mert arra számítok, hogy a https idővel emelni fogja az oldalamra vezető linkek pozícióját a google-ben, és így több látogatóm lesz.

A másik szempont, hogy a https gyorsabb mint a http, mert tud párhuzamosan is pl képeket leszedni. Szóval haladni kell a korral.

Amire kevésbé vagyok büszke, az az hogy visszariadtam a Tomcat APR használatától, és a gagyibb jávás megoldás maradt benn. Amit igazából nehezebb is volt konfigurálni, mert a standard certificate és private key helyett egy jávás keystore-ba kell belepakolni a kapott pem fájlokat, és az nem volt egyszerű.

Redesign

Átesett az oldal (http://www.kozvetlen-allasok.hu) egy ráncfelvarráson.
Tegnap este tettem fel a frissítést, úgyhogy még nagy vonalakban látom csak mivel lehet probléma.

(pl az állások száma két aloldalon is null lesz, erről már tudok)

Inkább arra lennék kíváncsi hogy ez jó irány-e, tetszik, nem tetszik.
Én nem tudok designolni, úgyhogy erre megkértem egy ismerősömet, ennek a posztnak a linkjét át fogom neki küldeni, és elolvashatja amit itt írtok a munkájáról.

Ötletként felmerült, hogy betehetnék egy videót a háttérkép helyére, valamilyen irodai jelenettel.

Startup kereső

Az jutott eszembe, hogy csinálhatnék egy weboldalt,
ami beindexeli a magyar startupok oldalait, és ezen lehet tartalom alapján keresni közülük.

Kb 400 ilyen cégről tudok
A közvetlen-állásokhoz hasonlóan ingyenes lenne, adsense-ből szedni pénzt.
A bekerülést manuálisan dönteném el, tehát lenne form ahol lehet jelentkezni, de személyesen hozok döntést hogy az startup vagy nem. (Erről esetleg egy publikus indoklás)

Közvetlen-állások, részmunkaidő

közvetlen állások, részmunkaidő

Létrehoztam egy "részmunkaidős állások" oldalt, tartozik hozzá menüpont is.
Ezen az oldalon a dedikáltan napi 4 vagy heti 20 órás, a napi 6 vagy heti 30 órás állások, és azok szerepelnek, amibe bele van írva hogy "részmunkaidő". Ez nagyjából 200 találatot jelent, van saját lapozója amin az egészet végig lehet nézni.

Az oldal általában egy-egy domainről csak 3 linket listáz ki, a többit nem jeleníti meg, csak ha direkt kikapcsolom. Ez itt a részmunkaidőnél ki is van kapcsolva, ami miatt elég sok a közigállásos, meg a lidl bolti dolgozó link. (A másik ahol van kapcsolva, az a site:)

közvetlen-állások, szeptember

Néhány változás az oldallal kapcsolatban:

  • cégnév extractor, de ez elég bizonytalanul működik, ezért nem is jelenítem meg sehol, viszont azt a keresőbe ütve megtalálhatja a céget. Amennyiben a kivont szöveg tényleg a cég neve persze, amire egyelőre 50%nál kisebb az esély.
  • A favicon-ok bányászatát feljavítottam, illetve ez ki is volt egy darabig kapcsolva az éles crawlerben, ezért "meglepő módon" nem működött, viszont a default eset, hogy a domainnev/favicon.ico url-t tette ki az oldalra ilyenkor is feldobott néhányat, ezért nem tűnt fel a dolog amíg bele nem néztem. Most annyira okos, hogy már a crawler ellenőrzi a favicon jelenlétét, a default helyen is, és ha nincs akkor a default egy saját karika ikon. A faviconokat nem az eredeti méretben jelenítem meg, hanem ránagyítva, ezért a 16x16-os faviconok pixelesek lesznek. Nekem ez így jobban tetszik mert színesebbé teszik az oldalt, de lehet hogy valakit a pixelek jobban zavarnak.
  • lerövidítettem a snippet-eket 400 karakterre, és ez most marad is így, a keresés szempontjából is jobbnak tűnik
  • A vodafonos extraktort javítani kellett, telehányta a sitemap-et is zárójeles + & jeles állásnevekkel. Ezen kívül hiányzott belőle egy sor mező rendes kitöltése is, pl a helyet fixen Budapestnek vettem, pedig van állásuk Miskolcon is.
  • A webalkalmazásban jobbára seo változások történtek, meta description, title ilyesmi. Mobil képernyőn nem kínálja fel a hibás találat visszajelzést.
  • Sitemap hibákat, hibás linkek generálását kellett kiszűrni.

Nyaralás

Július második felében, illetve augusztus elején nyaralni voltunk a feleségemmel, most nem tudok sok mindenről beszámolni leégtem a napon, aztán jött egy esős hét, lenyírtam a füvet...

Sajnos a vége felé kicsit bizonytalanná vált a robot működése. Ez is egy jó teszt arra, hogy vajon meddig működik mindenféle emberi beavatkozás nélkül. A bosszantó ebben hogy itthon kb 6-7 órányi nyomozás után sem derült ki hogy pontosan mi volt a baja, másnap simán lefutott. Csillagállás, vagy a gazda szeme hizlalja a jószágot...?

Ami a nyaralás óta elkészült:

  • sitemap.xml generálása, felesleges önkorlátozások nélkül. Most (újra) kb 10 ezer mélylink generálódik. Sajnos ez nem teljesen állandó, az aktuális találati listától függ. Ezek a mélylinkek kombinálva tartalmazzák a foglalkozást és a helyet, ugyanezeket használja az előző posztban leírt navigáció is - ahol lehet. Remélem javít a SEO-n.
  • a találatok melletti faviconokat még a robot megnézi hogy létezik-e, és ha nem, akkor egy saját kör alakú ikon jelenik meg a helyén. Eddig spekulatívan, ha nem talált a robot favicont, akkor beírta a http://domainnév/favicon.ico címet, de sokszor itt sincs favicon, a böngésző meg szenved, próbálja betölteni a lehetetlent. (ez még folyt köv)
  • A snippet generálásból kitöröltetek kicsit több spam jellegű szöveget.
  • Állásnevek felismerésén, különösen a "vezető" című foglalkozást próbáltam javítani
    szétbontottam a "hely" navigációt település / megye / ország szintekre
  • átköltöztettem a blogot a jobkereso.blog.hu-ról a kozvetlen-allasok.blog.hu-ra, éljen az export/import funkció a blog.hu-n!

Közvetlen-állások : júniusi változások + egy kérdés

A crawler részen a legnagyobb változás, hogy kivettem a cluster-es futtatásból a közvetlen céges állásokat letöltő extractorokat, és ezek most egy teljesen külön amazon gépen futnak. Továbbra is spot instance, de cluster nélkül lokálban futtatja a keresést. Erre azért volt szükség, mert a közigállásról kb 2800 állás jön le, és a polite crawl (3mp két lekérés, ugyanazon oldal ellen) miatt ez az első folyamat nagyon elhúzódik, és az összes többit feltartja. A külön gépen elmolyol magában, a végén pedig az eredményeit becsatornázza a nagy clusteres keresésbe.

közvetlen-állások oldal : főállásban csinálom (egy darabig)

közvetlen állások!

Úgy alakult, hogy most ráérek az oldallal napi 8 órában foglalkozni. (Hát ez nem volt teljesen önkéntes, de ezt most hagyjuk) Egyelőre az a tervem, hogy a nyár folyamán megpróbálom az oldalt eljuttatni az önfenntartó, illetve bevételt is termelő állapotba, ennek pedig az a feltétele hogy lényegesen több látogatóm legyen mint eddig.

A múlt héten már azon dolgoztam, hogy bepótoljam a régóta tervezett, de elmaradt fejlesztéseket, illetve a bosszantó hibás találatokat kiszűrjem.

Közvetlen állások: 2015

Közvetlen állások

Néhány változás az elmúlt majdnem fél év során...

  • a css/html úgy változott hogy a mobilos használhatóság javult
  • új extraktorokat* csináltam, pl Aldi,Audi,Roche,Vodafone
  • a Vodafone-os extraktor egyúttal egy kísérleti cucc, mert a vodafone taleo-s aloldalán elérhető (és bugos) rss feederből állítja elő az index tartalmát. Ez nem megy keresztül a keresőprogram egészén, teljesen külön ágon, a folyamat végén kerül bele a lucene indexbe.
  • fixáltam egy bugot, ami a város mezőbe kerülő space-ek hatására csinált http 500-as hibát
  • nyitás külföldi pozíciók felé

Közvetlen állások : új logó + találat analitika

közvetlen - állások

Csináltattam új logót, ami már az új névvel működik, és a favicon is változott, ez szerintem jobban is néz ki, és a tartalomhoz is jobban igazodik.

A munkáltatók menüpont alatt eddig csak a domain név alapján volt egy eloszlást bemutató diagram, ez most kiegészült két hasonlóval.

Az egyik az állásnevek szerinti eloszlást mutatja, a másik a település szerintit.
Jó megfigyelők észrevehetik hogy a linkfelhő és az analitika számai nem egyeznek meg.

közvetlen-állások augusztusi változások

link: http://www.kozvetlen-allasok.hu

Átrendeztem az oldalt olyan módon, hogy a linkfelhőt, a hírlevél és barát-értesítő levélküldőt átpakoltam a kép bal oldalán létrehozott sávba. A hirdetések a jobb sávból átköltöztek a találatok közé, nagy téglalap alakú hirdetési formában, remélem ez kevésbé fogja zavarni a látogatókat, mint amennyire ösztönzi őket a hirdetésre kattintásra.

A módosítások oka részben az ergonómia javítása, illetve az hogy az oldal a betöltést követően egyből láthatóvá tegyen találatokat, eddig leginkább a "kezelőszerveket" lehetett csak látni, a találatokhoz görgetni kellett.

nyári változások - Közvetlen állások (ex jobKereső)

  • domain név váltás a http://www.kozvetlen-allasok.hu-ra
  • átállás amazonra
  • extraktor az OTP állásaihoz
  • helyrehoztam a Lidl extraktort
  • felmozgattam a lap tetejére a megosztás linkeket
  • kisebb seo, kulcsszavak kiigazítása
  • hosszabb snippetek

Az amazonra átállás azt jelenti, hogy saját asztali gép helyett a crawler amazon ec2 instance-okról fut. Egy micro instance manageli a clustert, minden nap teljesen nulláról újraindul az adatbázis, a cluster slave-jei spot instance-ok, ezek a munka kezdetén jönnek létre, és a végeztével nyom nélkül eltűnnek, az adatokat pedig nem tárolom, csak a végeredmény indexet, ennyi pont elég a webes keresőnek, helyet is megspórolok vele.

bugfix2 - jobKereső

www.kozvetlen-allasok.hu

Bugfix

Lapozás hiba

  • tünet: amikor egy weboldal állásajánlatait listáztuk, és elég sok találat tartozott a konkrét oldalhoz, hogy lent a lapozó aktiválódjon, a lapozó hibásan jelent meg, a linkek üres oldalakra vezettek.
  • ok: A linkekből hiányzott az a paraméter, ami megmondta volna hogy most nem kell 3-ra korlátozni az egy weboldalról származó találatok számát, hanem meg kell jeleníteni mindet, ezért nem jelenített meg semmit - a lapozóban megjelenő másik paraméter, a start már eleve 10-ről indul, ami a 3-nál nagyobb, tehát a második és azt követő lapokra nem kerülhetett semmi.

bugfix - jobKereső

néhány bug javítása:

- amikor csak a foglalkozás vagy csak a település van kitöltve, és elmegy a magyarázó szöveg mint paraméter, eddig nem jöhetett találat, most kijavítottam hogy a magyarázó szövegre ne keressen, és ne vegye figyelembe a kiemeléseknél sem

- a lapozó aktuális eleme, ahol állunk kiemelt css-t kapott, hogy látható legyen hol vagyunk

- a friss checkbox beixelésekor néha nem listázott találatokat, ha több friss url került a rendszerbe mint 50, és a konkrét elem amit megkaphattunk volna, az 50. utáni pozícióban lett volna. Ilyenkor a kulcsszavas kereső találatainak, és a friss url-eket tartalmazó halmaznak nincs metszete, és ezért nem jelenik meg találat. A hírlevél viszont ezekre a kulcsszavakra is kiment. Ezt a bugot a design refaktor során fejlesztettem bele...

update: picit világosabban, szóval a program mysql-ben elmenti mik azok a találatok, amelyek a legutolsó betöltéssel kerültek be. "Friss" kereséskor a solr kulcsszó szerinti keresésre kapott találati lista elemei közül kiszűröm azokat, amelyek nem tagjai az előző friss halmaznak. A fenti friss lista mysql lekérdezésébe bekerült egy 'limit 50', ami miatt nem minden tényleg friss url-t tartalmazta a lista, hanem csak az első 50-et.

Új design - jobKereső

Az előző posztomban említett szavazás azzal végződött, hogy 72 szavazatból, 40%-al a "zöld" változat nyert. Ezt azóta implementáltam dinamikus formában.

Tudom hogy akadt néhány posztoló, akik szerint ez még mindig nem az igazi, de egyelőre erre van keret, és mindenképpen szeretném felmérni változtatások hatását a látogatottságra, mielőtt további erőforrásokat tennék ebbe.

Tehát most az oldal az új design szerint működik, néhány aloldalt még nem csináltam meg, ezeket majd fokozatosan viszem át erre a mintára.

kérdés:
Egy esetleges domain váltás esetén, ti melyiket választanátok?

  • kozvetlenallasok.hu
  • kozvetlen-allasok.hu
  • direktmunka.hu

jobKereső - új Design

A jobKereső projekt eljutott abba a fázisba, hogy az egyértelműen elavult, illetve eleve rossz külső megújul. Ennek érdekében megkértem egy designert hogy hozzon létre alternatív terveket a majdani új designhoz.

Ezek most a főoldalt mintázó statikus html-ek formájában elérhetőek a jobKereső oldalán, addig szeretnék várni a választással, amíg a látogatók el nem döntik, hogy melyik változat a legjobb. Vagy a legkevésbé rossz.

Egyelőre 3 design variáns létezik, ezen az oldalon gombokkal lehet szavazni, akár egyszerre többre is, ha valaki azt szeretné kifejezni hogy valamelyik nem tetszik neki.

jobKereső változások - március

  • az előző változás listára adott kommentek hatására, megoldottam hogy a központozást megtartva, és egyúttal sokkal rövidebb szöveg legyen a link alatt. Ez úgy működik, hogy az oldal tartalmát mondatokra bontja, kikeresi azt a 3 mondatot, amelyekben összesen a legtöbb álláskeresésre releváns szót találja, és ezeket fűzi össze. Bizonyos html elemekből automatán csinál mondatokat, akkor is ha nincs a végén írásjel.
  • Átalakítottam a div/table tagek id és classname alapján történő szűrését, ami sokkal erősebb lett, így most a legtöbb header/footer/sidebar/leftbar/rightbar etc. nem kerül indexelésre. Konkrét példa, hogy az MTA karrier lapján oldalt szerepelt egy cikkajánló amiben szerepelt a "magyar kutatók tajvani látogatása" kitétel, ami miatt az oldal tartalmától függetlenül ezt feldobta arra hogy "kutató". Akkor is ha a tényleges állás egy takarítónőé volt. (Ettől viszont most fals negatív van, hülyén elnevezett html struktúra esetén eldobja a lényegi tartalmat)

jobKereső változások - február

    link a jobKeresőre
  • Egy kicsit átalakult az oldal kinézete, olyan segítséget kaptam, aki főleg könyvek tipográfiájához ért, és szerintem sokkal olvashatóbb lett. Azért lehet hogy nem kéne feladni a twitter-bootstrap ráhúzását...
  • A kozigallas-ról származó állások száma jelenleg 1270. Sajnos az onnan érkező változások eltakarják a többi cégét, mivel csak az első 50 új találat kerül ki naponta, ezt pedig rendszeresen átlépi már a változások mértéke.

  • Csináltam egy diagramot, ami a 0.2%-nál nagyobb találati arány képviselő cégeket mutatja meg egy kördiagramon. Ez mindenesetre jól kifejezi, hogy a legtöbb találat kis és középvállalatokhoz tartozik, amelyek 10-nél kevesebb állást hirdetnek a saját lapjukon.
  • Eltávolítottam a brozie js pluginját, mert borzasztóan lelassította az oldalak betöltését, és a korábbi blogposztban is panasz érkezett rá hogy koszolja a js konzolt. Látogatókat pedig nem hozott.
  • A kozigallas-ra jellemző "megtekintés" című állások már a rendes indexelt állásnévvel jelennek meg, és ami néha látható volt hogy egy "br..."-ből áll a link megszűnt. Ezen az oldalon nincs favicon valamiért, ezért én fixen a kormany.hu favicon címét használom. Ezek továbbra is az eredeti oldalról töltődnek be, a jobKereső nem cache-eli őket.
  • Az autosuggest funkció nem találomra ajánl fel minden értelmezett foglalkozásnevet,hanem csak olyan szavakat, amelyekre van találat. Ebbe mostantól beletartoznak az értelmezett település és megye nevek is. A magyar települések legtöbbjét értelmezi, ha van rá találat. Külföldből csak néhány fontosat emeltem ki pl. London, de ez nem jellemző. Megyék esetén ez a támogatás esetleges, mert a kötőjeleket nem tudom kezelni.

jobKereső változások - 2014 január

- az egyes találatok mellett ikon jelenik meg, ami az eredeti oldalon lévő favicon-ra mutat, az ehhez vezető url-t vagy kiparszolja a céloldalból, vagy ha ott nem talál ilyent akkor berak egy default /favicon.ico címet és onnan próbálja letölteni. Úgy oldottam meg, hogy egy span elemet 20x20 pixelre méretezek, float-al eltolom balra, és a background-image az ami magára az ikonra mutat. Így ha nincs meg az ikon, akkor nem egy hibás kép ikont kapok a helyére, hanem üres teret.
A dolog hátulütője, hogy a float miatt a hiányzó ikon helyét is körbefolyja a szöveg. Eredetileg úgy szerettem volna ezt megoldani, hogy nincs ez a bekezdésszerű dolog az ikon körül. Ha valakinek van ötlete hogy lehet jól megcsinálni, szívesen venném!

jobKereső - főoldal design

Egy kicsit átrendeztem a rajta lévő elemeket hogy szebb legyen, de a design és a struktúra maradt az eredeti.
Itt most a cél a középre rendeződés volt, és ezt majd megcsinálom a találati oldalon is.

Ha valakinek ötlete adódik hogy tehetném jobbá, ne titkolja el!
Előbb utóbb szükségét érzem egy teljes újraírásnak, már csak a jsp-be ágyazott kódok kirefaktorolása végett is.

nem tudom pl. tényleg szükség van-e a városok és foglalkozások linkjeire, a keresés eredendően szövegesen történik, ezek csak a mankó, meg a gyors kipróbálás szerepét töltik be

Megcsináltam a hírlevél szolgáltatást! (jobKereső)

Keresést követően, az aktuális keresőszót egy email címmel párosítva, az email címre hírlevelet küld a rendszer.

A felhasználó akkor kap levelet, ha jött az érdeklődési területébe vágó ajánlat, a link pedig erre az előre beállított keresésre mutat, tehát a linkre kattintva a jobKereső oldalára kerülünk. Ezen az oldalon lesznek az legutolsó betöltés kulcsszónak megfelelő találatai.

Itt jegyezném meg, bár az oldalon egyelőre nincs ilyen "disclaimer", de a begyűjtött email címeket nem fogom harmadik félnek átadni, vagy bármilyen más célra használni. A hírlevél csak a kért kulcsszavak új találataira mutató linkeket fogja tartalmazni, nem kerül bele más jellegű hirdetés, vagy az oldal fejlődésével kapcsolatos információ sem.

JobKereső

Kulcsszó alapú, közvetlen álláskeresés a foglalkoztatók saját weboldalain

Tehát a lényeg, hogy létrehoztam egy olyan crawleres kereső alapú álláskereső oldalt, amely a webről a publikus, és közvetlen állásajánlatokat letölti, feldolgozza, és a weboldalon kereshető formában közzéteszi. Tehát a webes keresőfelületre állásokkal kapcsolatos kulcsszavakat gépelve állásajánlatok linkjeit és azok kiemelt részeit sorolja fel. Az oldalon csak állásajánlatok vannak, másféle tartalom nincs, eltekintve attól amikor a robot hibázik, és mégis bekerül nem állásajánlat, de most már ritka az ilyesmi.