Nový hledač už umí hlodat
Není to tak dávno, kdy jsem napsal článek o Petru Hejlovi, který konečně získal investici ve výši jednoho milionu korun na tvorbu Nového hledače. Dnes mi od něho přišel mail, že už má kus práce hotovou a nakešovány první stránky v databázi. Zatím mi vyhledávání jako takové nefunguje (respektive vrací chybu 403), ale je připravena ukázka výpisu vyhledávání.
Možná si pamatujete na výstup Petra Hejla ve II. řadě Dne D, kdy narážel na špatně seřazené výsledky vyhledávání Google na klíčové slovo „lednice“. Asi teď nebudou mít radost výrobci a prodejci bílého zboží :), ale na příkladu je ukázkový výpis z Nového hledače.
Jak je vidět, tak hledač pracuje i s meta keyword. Dokáže spočítat počet výskytů klíčového slova na stránce a to hlavní – můžeme si všimnout „řadící hodnoty“, což by v budoucnu mohlo pomoci k transparentní SEO optimalizaci jednotlivých webů na klíčová slova. Pokud vím, tak na podobném „otevřeném“ principu řazení funguje například vyhledávač Morfeo s jeho Q rankem. Nicméně neznám nikoho, kdo by pro jeho nízké zastoupení přímo optimalizoval.
„Mám hotových jedenáct programových modulů o celkovém objemu asi deseti tisíc řádek kódu“, pochlubil se Petr. Parser mu zatím běží na Windows a v nejbližší době chce přesedlat na Linux a udělat pár nezbytných kroků ke zrychlení aplikace. Jeho cílem je naparsování 1000 stránek za sekundu.
Ačkoliv není Petr Hejl kdovíjaký expert, tak se hodně snaží dotáhnout svoji práci do zdárného konce. Jsem hodně zvědavý, jak bude hledač vypadat na konci roku, kdy by měl být podle plánu dokončen.
On už docela zase hledá i Seznam, soudě podle toho, že se mi drastický pokles návštěv ze Seznamu v poměru ke Google zastavil. Ale kdoví, třeba už v lednu příštího roku budou webmasteři na své stránky nasazovat nové reklamy od HlodSense nebo Hkliku?
Ja bych se vykaslal na naky HlodSense nebo Hklik, hlavne kdyz to bude lepsi nez seznam, s tim jeho indexovanim me uz stve.
Dobré ráno,
díky za docela fundovaný článek.
Dal sem odkaz na článek na home page projektu:
http://www.milionovastranka.net
Mám „jen“ tyto“ připomínky či upřesnění.
1. Ta ukázka:
http://www.milionovastranka.net/examples/vysledky_hledani_linux.htm
je jen stažená a uložená stránka.
Důvody, proč (zatím) nezveřejním adresu serveru jsou dva:
– potencijální hackeři
– su na Netu relativně známej aš populární, tagže zprávo vo adrese by asa rozčířila rychlostí blesku a hromadná účast by mi server schodila
2. Den D uš je passé.
3. Lednice a lednice mám váborně vyřešeno.
Na domovské stránce hlodání
http://www.milionovastranka.net/examples/domovska_stranka_linux.htm
je parametr
Hlodat přesně? ne ano (rozlišovat velikost písmen, diakritiku a pořadí všech hledaných slov)
Default je ne.
Takže pokud parametr necháte být, hlodáte nepřesně, to je při zadání „lednice“ hlodáte chladírenskou techniku i obec na Jižní Moravě.
Pokud senaopak obtěžujete začkrbout v tomto parametru „ano“, hlodáte pří zadání „lednice“ chladírenskou techniku a při zadání „Lednice“ obec na jižní Moravě.
Platí to obecně.
Dost dlouho sem přemýšlel, jak tento problém vyřešit, a zdá se mi, ž ejsem našel jednoduché a účinné řešení.
3. Formální stránce výpisu hlodání sem věnoval patřičnou pozornost.
Texty u linků jsou smysluplné a barevně odlišené.
Jsou uvedeny i hodnoty „celkový počet vskytů slova na stránce“, což je transparentní a docela uživatelská informace pro uživatele.
Všimněte si, že tyto dva údaje tak úplně nekorelují, počet kriterií mám 66.
Řadící hodnota je pomůcka pro SEO (ale bohužel i pro Black SEO). SEO expeti sice nebudou vědět, na co optimalizovat (hodnotím množiny), ale aspoň se budou moct přesvědčit o výsledku.
4. Nyní pracuji na časové optimalizaci.
5. „Ačkoliv není Petr Hejl kdovíjaký expert…“
Tak temu sa musím pousmát.
Ad moje programování: 25 let praxe, 8 programovacích jazyků, 3 velké projekty, cca 300 řádků zdrojáků.. Ty zkušenosti teďky zúročuju.
6.
Primárním cílem je prodej algoritmu.
Teprve pokud se to nepovede, budu provozovat Nový český hlodač,
pak adresu serveru samozřejmě zeřejním.
P.
Uff, už mi choděj Downloadery i ve vláknech Fronteru.
Cca 16 hodin práce, mezitym sem byl na chvilku 2x u Tety a několik hodin spal.
Takže si budu moct spustit Downloadery jednak jako samostatné procesy, jednak ve vláknech Fronteru a vybrat rychlejší variantu.
Problém je, že pokavad spustim jednu metodu ve vláknech programu víckrát, tak tyhle metody sdílej proměnný, takže vznikne paralelní guláš.
Je nutný tou metodu (i s její třídou) v programu n-krát zduplikovat a přejmenovat (Downloader001, Downloader002…).
1) Na hlodací ukázce mi přijde, že se nezohledňují skloňované tvary (pro Lednice je další tvar asi jen jeden – Lednici, protože množné číslo se asi moc nepoužívá). Pletu se?
2) Pro optimalizaci Hlodače bude mít zase význam tag Keywords?
@Petr Hejl
K bodu 3. Je to trochu neprakticke, kdyz budete mit treba nejaky form v prohlizeci, kde se parametry nezadavaji. Na mobilu si nedelam starosti s velkymi a malymi pismeny. Mnohem praktictejsi by bylo zadavat vlastni nazvy ci konkretni frazi do uvozovek.
K bodu 5. Ono se nehledi na roky praxe, kouka se na reference a jak kvalitne jsou napsane. Lepit kod dneska umi kazdy. Staci se podivat na zdrojak milionove stranky a vsem je jasno, ze to bud delate v casovem presu a duverujete wordu nebo zkratka nemate znalosti. Uz jenom naparsovani takove neoptimalizovane stranky trva neskutecne dlouho a s tim preci bojujete. Na webu zapracujte, nevypada to profesionalne a duveryhodne.
Az budete mit vice screenu, poslete mi je.
Uf, podruhé, tak sem dodělal to spouštění Downloaderů ve vláknech Fronteru bez duplikací Downloaderů ve zdrojovém kódu.
Oříšek byl, že v Downloaderu mám hodně metod a stejně jako v dalších programech používám globální proměnné (je to daleko jednodušší než předávání hodnot přes parametry nebo objekty). Ale tyto globální proměnné pro každý Downloader samozřejmě nesmějí sdílet ani Fronter, ani jednotlivá vlákna Downloaderů vzájemně.
Trvalo mi to 24 hodin, jako obvykle skoro v kuse.
Ušel sem 4 slepá uličky, které nefachčily:
– ThreadStatic nefunguje pro pole
– ThreadLocal vyžaduje zvlášní způsob deklarací (a mám dojem, že taky moc nefunguje)
– vytvoření nové instance třídy s globálními parametry Downloaderu ve Fronteru a předávání této instance Downloaderům přes parametr (tohle by možná chodilo, ale už to mám hotový, tak se k temu nebudu vracet)
– vytvoření nové instance třídy s globálními parametry Downloaderu až v Downloaderu
Správné ulice byly tyto:
– vytvoření nové instance třídy s globálními parametry Downloaderu ve Fronteru a předání přes proměnnou Downloaderu
– zkopírování třídy globálních proměnných přímo do Downloaderu a použítí .this v programu a metodách Downloaderu
Děkuji konzultantům za rady.
PS1
Teďky můžu pokračovat v optimalizaci paměti a časů.
PS2
Takže si budu moci vyzkušet, zda mají jet Downloadery jako samostatné procesy, nebo ve vláknech Fronteru a zvolit rychlejší variantu.
@Lydie
1. Slovník nepoupžívám, takže hlodám, co tam chlodající napíše a neslučuji Lednice a Lednicí…
Možná jej časem koupím, ale ono je to použití trochu dvojsečné.
2. Ano, keywords sou používány. Podle mne mimo jiné svědčí o pečlivost majiele stránky resp. webmastera.
@Unreal][
Ad 3: Naopak, je to velice praktické, sám se byl překvapen. Kdo se tím nechce zabývat nebo temu nerozumí, tak prostě ten parametr nezaškrtne a hlodá nepřesně. A experti jej mohou použít. Uvozovky to umí pro přesné hlodání také.
Ad 5: Mám 21 serverů, které píšu v HTML. Milionovou stránku dělám ve Wordu, protože je to mnohem rychlejší práca. Investory již mám, takže ta stránka je nyní částečně irelevantní.
Časem uložim více výsledků hlodání.
Dost práce: teďky sem spočítal, kolik verzí programů sem cca za 3 měsíce vyvinul, je jich 44.
Výsledky hlodání – ukázky:
http://www.milionovastranka.net/examples/vysledky_hledani/vysledky_hledani.htm
Nový hledač – články:
http://www.milionovastranka.net/documents/media/media.htm
(je jich už 39).
Hmm tak jsem se chtel mrknout na vysledky hlodani ci hledani 🙂 a hlasi to ERROR Požadovaný dokument nebyl nalezen….
Ale jinak o tomto projektu se dozvidam az tady autorovy preji hodne uspechu
Tady je toho víc:
http://www.milionovastranka.net/ukazky/vysledky_hledani/vysledky_hledani.htm
Na server Vás nepustím, sorry, mám obavy z hackerů a hromadné používání by mi ho shodilo.
A navíc testuju to jenom na mých 21 WWW serverech:
http://www.jiznimorava.org/servery
Nový Hlodač, inventura:
15 programů, 29 tisíc řádků zdrojového kódu.
Ovšem části programů jsou analogické, pouze s menšími obměnami.
Odhad počtu neduplikovaných řádků zůstává 10 tisíc.
pěkné… smím otázku? baví vás vývoj hledače? 🙂
Baví.