„Szerkesztő:Gyimbot” változatai közötti eltérés
Nincs szerkesztési összefoglaló |
|||
1. sor: | 1. sor: | ||
Két botom van: |
|||
⚫ | |||
* A Dal infobox paramétereinek összegyűjtése és tárolása a [[Modul:Kották metaadatai]] lapon. A bot forrása és amd64-es binárisa elérhető [http://www.gyimesilaszlo.hu/ debian repositoryból] (wikikotta csomag). |
|||
* A kémiai lapok összegképleteinek összegyűjtése. A bot átdolgozása most<ref>2018. március</ref> folyik. |
|||
⚫ | |||
== Összegképlet robot == |
== Összegképlet robot == |
A lap 2018. március 24., 00:45-kori változata
Két botom van:
- A Dal infobox paramétereinek összegyűjtése és tárolása a Modul:Kották metaadatai lapon. A bot forrása és amd64-es binárisa elérhető debian repositoryból (wikikotta csomag).
- A kémiai lapok összegképleteinek összegyűjtése. A bot átdolgozása most[1] folyik.
A kémiai bot elsődleges feladata a magyar Wikipédia kémiai lapjairól összegyűjteni az összegképleteket. A másik alkalmazása lapok újraparszolása.
Összegképlet robot
Az összegképlet robot az API változása miatt jelenleg nem üzemel. Az utolsó feltöltött adat állapota 2014. augusztus 17. Részletek alább.
Az összegképletek összegyűjtésekor a bot az alábbi szócikkekbe ír:
A botot Gyimhu üzemelteti.
A legutolsó dump dátuma: 2024. május 2.
- az utolsó futás ideje: 2014. szeptember 7.
- a használt adatbázis dump: http://dumps.wikimedia.org/huwiki/20140907/ szeptember 7.]
- Géppel felismert vegyület: 1972
- Hibásan felismert (a fentin felül): 8
- Kézzel hozzáadott vegyület: 34
- Vegyület összesen: 2006
- Felismert összegképlet: 1879
- Fel nem ismert összegképlet: 93
- Kézzel megadott összegképlet az új vegyületekkel együtt: 73
- Összegképlet összesen: 1952
- DISPLAYTITLE: 16
A robot futtatása
- A wikidump letöltése. Futási idő 10–15 perc.
- A mysql táblák létrehozása indexek nélkül. A huwiki-n a mediawiki verziójának változásával a szkript változhatik. A végrehajtási idő olyan rövid, hogy nem mérhető.
- A huWiki importálása:
java -jar mwdumper.jar pages-articles.xml
. A futási idő kb. negyed óra. - Indexek létrehozása a beimportált táblákra. Futási idő 3–4 perc.
- Munkatábla létrehozása az összegképleteket tartalmazó szócikkek számára. Memóriakorlátos a régi konfigurációban, ezért érdemes leállítani a gnome-ot és saját wikit. Az új konfigurációban diszkkorlátos. Futási idő a régi konfigurációban 4–4½ óra, az újban 3½ perc. (!)
- A kézi javítólista utolsó változtatásainak ellenőrzése, eltárolás a helyi filerendszerben (kezi.txt).
- Az összegképletek kigyűjtése
- A wiki-lapok generálása, feltöltés a helyi wiki-be ellenőrzés céljából.
- statisztika előállítása, jelen lap kézi szerkesztése. A kapott lap összevetése a helyi wiki összegképlet lap| utolsó és utolsó előtti változatának különbségével. A új, összegképlet nélküli lapok ellenőrzése, szükség esetén az összegképlet javítása és az összegképlet kézi megadása. (A következő futtatáskor ne felejtsük el törölni a javított összegképletű lapokat a kézi listából.) A vegyületekben szereplő elemek számának változása esetén a wtabl.c program módosítása.
- az utolsó letöltés óta keletkezett új lapok letöltése, kézi javítása, a kémia munkacsoport lapjának szerkesztése
- a lapok feltöltése huwiki-be.
Konfiguráció
- processzor: 2 darab 2-magos Intel(R) Core(TM) i5-3210M, 2.5 GHz
- memória: 4G
- operációs rendszer: debian 7.4 (wheezy)
Szükséges csomagok: mysql, libmysqlclient-dev, gcc, wget, openjdk-6-jre.[2]
A wikidump letöltése
FNEV=pages-articles.xml.bz2 rm -f $FNEV wget -t1 "http://dumps.wikimedia.org/huwiki/latest/huwiki-latest-pages-articles.xml.bz2" -O - | bunzip2 -c >$FNEV
Az összegképletek kigyűjtése
- Az összegképlet lapok generálása. A gépi listát (gepi.txt) előállító program (hufo) C nyelven íródott, futási ideje kb. egy perc. Ez a robot magja.
Az összegképlet-lista egyszerű szövegfile. Két példasor:
Aceton-peroxid Aciklovir|C=8|H=11|N=5|O=3
Az eredményfile-ban minden munkatáblabeli szócikk szerepel, ami nincs a tiltólistán (a kézi javítólista összegképlet nélküli sorai). Az első sorban a C-program nem találta meg az összegképletet, a másodikban a szócikkbeli összegképlettel azonos sorrendben sorolta fel az elemeket.
Ugyanilyen szerkezetű a kézi javítólista is. A lapgeneráló automatikusan összedolgozza a kettőt.
Ugyanez a program gyűjti ki és írja file-ba a DISPLAYTITLE sablonokat. A teljes eredményfile (hufo.ali):
Alfa-ketoizokapronsav|''alfa''-Ketoizokapronsav B12-vitamin|B<sub>12</sub>-vitamin Delta-valerolakton|''δ''-Valerolakton Dinitro-orto-krezol|Dinitro-''orto''-krezol Gamma-valerolakton|''γ''-Valerolakton N-klórszukcinimid|''N''-klórszukcinimid N-metilkoniin|''N''-Metilkoniin P-Toluolszulfonsav|''p''-Toluolszulfonsav Terc-butil-bromid|''terc''-Butil-bromid
A wiki-lapok generálása
A lapgeneráló lelke két C-program. Mindkettő a fent leírt összegképlet-file-t olvas be.[3] A wossz lista, a wtabl táblázat alakú weblapot állít elő.
Az első paraméter az összegképlet-file. Ha a program második filenevet is kap, kiírja az elemgyakoriságokat is (melyeket egyébként is figyel a táblázatos weblap miatt).
A lapokat egyetlen shell szkript állítja elő a fenti két C-program segítségével. Az összegképlet-listába bedolgozza az elemgyakoriságot egy második oszlopba. Az elemekre szűkített táblázatoknál a wtabl inputja a hufo.txt elemre szűrt változata. Az elemek listáját és a generálandó file-ok nevét a wiki.txt tartalmazza.
A lapok a wiki alkönyvtárban keletkeznek, a szócikk nevével azonos filenévvel.
A lapok feltöltése a magyar Wikipédiára
A műveletet a wiki-terminológia nem feltöltésnek, hanem edit-nek nevezi.
A feltöltő shell szkript a wiki alkönytár teljes tartalmát feltölti a Szerkesztő:Gyimbot alkönyvtáraiba, a filenévvel azonos szócikk névre.
A feltöltő shell-script alábbi sora az API változása miatt nem működk:
$WGET --load-cookies $KUKI -O $FILE --post-file $MUNKA \
"$URL/api.php?action=edit&bot&format=$FORMAT&title=$CIM&recreate&token=$TOKEN"
A $FILE-be visszaadott érték korábban:
Array ( [edit] => Array ( [result] => Success [pageid] => 345 [title] => Sablon:Berilliumvegyületek [nochange] => ) )
A változás után:
Array ( [warnings] => Array ( [txt] => Array ( [*] => format=txt has been deprecated. Please use format=json instead. ) ) [servedby] => mw1207 [error] => Array ( [code] => mustposttoken [info] => The 'token' parameter must be POSTed ) )
Teendők
-
{{DISPLAYTITLE}}
a vegyületek nevében - helyközök a vegyületek nevében
- a fenti két névformázás a hiányzó összegképleteknél is
- botstring wget-ben
{{kisbetűscím}}
(?): 250 darab. Ebből kémia:- Alfa-propiolakton 11611631
- Α-ketoglutársav 12382187
Újraparszolás
A wiki a szócikk mentésekor hozza létre a szócikk hivatkozásait. Ha a szócikk által hívott sablonok változnak, a hivatkozások ezt nem követik. Erre szolgál a reparse. A filelist.txt-ből veszi az újraparszolandó lapok listáját. Lekérdezi és változtatás nélkül visszatölti őket.
A laptörténetben ebből semmi nem látható, de a hívott sablonok hivatkozásai megváltoznak.
Jegyzetek
- ↑ 2018. március
- ↑ Vagy más Java-csomag, mely képes az mwdumper.jar-t futtatni.
- ↑ A két program ugyanazokból a forrásfile-okból áll. A különbség a C-fordítónak adott kapcsoló, melyet a main()- tartalmazó C-programban az
#ifdef
preprocesszor-utasítás figyel.