„Szerkesztő:Gyimbot” változatai közötti eltérés

A Wikipédiából, a szabad enciklopédiából
Tartalom törölve Tartalom hozzáadva
Gyimbot (vitalap | szerkesztései)
Gyimbot (vitalap | szerkesztései)
Nincs szerkesztési összefoglaló
1. sor: 1. sor:
Két botom van:
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 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] (<tt>wikikotta</tt> csomag).
* A kémiai lapok összegképleteinek összegyűjtése. Az átdolgozott bot tesztelése most<ref>2018. ápriliss</ref> folyik. A korábbi változattal ellentétben ez nem használja a wikidump-ot.
* A kémiai lapok összegképleteinek összegyűjtése. Az átdolgozott bot tesztelése most<ref>2018. ápriliss</ref> folyik. A korábbi változattal ellentétben ez nem használja a wikidump-ot. A bot forrása és amd64-es binárisa elérhető a [http://www.gyimesilaszlo.hu/ debian repositoryból](<tt>kemiabot</tt> csomag).

A kémiai bot elsődleges feladata a magyar Wikipédia kémiai lapjairól összegyűjteni az összegképleteket.


== Összegképlet robot ==
== Összegképlet robot ==

A lap 2018. április 9., 22:34-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. Az átdolgozott bot tesztelése most[1] folyik. A korábbi változattal ellentétben ez nem használja a wikidump-ot. A bot forrása és amd64-es binárisa elérhető a debian repositoryból(kemiabot csomag).

Összegképlet robot

Az összegképletek összegyűjtésekor a bot az alábbi szócikkekbe ír:

A robot által feltöltött lap Hivatkozás a fő névtérből
Összeglista Vegyületek összegképlete
Összegtáblázat Vegyületek összegképlet-táblázata
Berilliumvegyületek Berilliumvegyületek összegképletének listája
Brómvegyületek Brómvegyületek összegképletének listája
Fluorvegyületek Fluorvegyületek összegképletének listája
Foszforvegyületek Foszforvegyületek összegképletének listája
Jódvegyületek Jódvegyületek összegképletének listája
Kalciumvegyületek Kalciumvegyületek összegképletének listája
Káliumvegyületek Káliumvegyületek összegképletének listája
Kénvegyületek Kénvegyületek összegképletének listája
Klórvegyületek Klórvegyületek összegképletének listája
Magnéziumvegyületek Magnéziumvegyületek összegképletének listája
Nátriumvegyületek Nátriumvegyületek összegképletének listája
Nitrogénvegyületek Nitrogénvegyületek összegképletének listája
Rubídiumvegyületek Rubídiumvegyületek összegképletének listája
Talliumvegyületek Talliumvegyületek összegképletének listája
Vasvegyületek Vasvegyületek összegképletének listája
nincs összegképlet Vita:Vegyületek összegképlete

A botot Gyimhu üzemelteti.

Működés

Lépések:

  1. A bot lekérdezi a szócikk névtérből a kémiai sablonokra hivatkozó lapokat. Egyenként letölti őket, és kinyeri belőlük az összegképletet.
  2. Az összegképletek listáját korrigálja a kézzel megadott összegképletekkel, kihagyja belőlük a kézzel megadott szócikkeket.
  3. Generálja a wiki-lapokat.
  4. Lekérdezi a letöltött lapok létrehozási és utolsó módosítási dátumát és az azt végző szerkesztőt.
  5. Statisztikákat készít az új lapokról.
  6. Feltölti a lapokat a Wikipédiára.

A bot működésének fontos alapelve, hogy nem köti meg a szócikkek alakját, vagyis nem korlátozza a szerkesztőket, hanem alkalmazkodik hozzájuk. (Ez minden botra érvényes kellene legyen.)

A bot programjai linux shell scriptek és C programok. Debian disztribúcióban az amd64-re fordított kód és a forrás megtalálható a http://www.gyimesilaszlo.hu lapon, a kemiabot csomagban. Az alábbi rövid leírásnál több technikai részlet található a man lapokon.

Az összegképletes lapok összegyűjtése

Kémiai sablonok:

A shell script neve kembot, ami egyúttal le is kérdezi a lapokat (lásd alább). A lapok összegyűjtésére a sablhiv scriptet hívja a wikiscript csomagból a sablonra hivatkozó lapok lekérdezésére.

  • Bemenő fájl: –
  • Eredményfájl: kembot.mol.

A fenti sablonokra hivatkozó laplisták lekérdezése párhuzamosan történik, így a futási idő néhány másodperc. A sávszélességet maximálisan kihasználja, a processzor- és diszkigény minimális, .

Az összegképletek lekérdezése

Ezt is a kembot csinálja. A lapok lekérdezésére a wikiszoveg scriptet hívja a wikiscript csomagból, a lap parszolására és az összegképlet kinyerésére a kemia nevű C-programot.

Az eredmény ilyen alakú:

Aceton-peroxid
Acibenzolár|C=7|N=2|S=2|O=1|H=4

Az első esetben a parszer nem talált összegképletet a lapon, több különbözőt talált, vagy az összegképletet nem tudta értelmezni.[2] Az utóbbi leggyakoribb okai:

  • polimer
  • kristályvíz
  • töltés/ion
  • több képlet, vagy ugyanaz a képlet többféle alakban.

A kémiai sablonok lehetővé teszik több eltérő összegképlet megadását, és ezt a wiki parszere nem veszi észre, mert

  • többféle paraméterben adhatók meg: Formula, Képlet, kémiai_képlet, chemical_formula. Az összegképlet vegyjel-paraméterekkel is megadható.
  • a három chembox típusú sablon alsablonokat hívhat, melyek szintén elfogadják a fenti összegképlet-paramétereket.

Fájlok:

  • Bemenő fájl: kembot.mol.
  • Eredményfájl: kembot.kepl.

100 Mbit-es hálózatban a futási idő kb. negyed óra. A processzor- és diszkhasználat minimális.

Kézi korrekció

Két célja van:

  • a parszer által fel nem ismert összegképlet megadása
  • szócikk elhagyása az összegképletek közül. Pl. a Sablon:Hulink hívja a Drugbox sablont, ezért a gépi listában benne lesz, viszont az összegképlet értelmetlen egy vegyületcsoportra (melyek ráadásul kémiailag nem is hasonlóak).

A korrigálni kívánt információt egy kézzel szerkesztett fájlban kell megadni (kezi.txt), melynek alakja azonos a gépi eredményfájléval. Az értelmezésben annyi különbség van, hogy a kezi.txt képletet nem tartalmazó szócikkeit törölni kell a gép által megtaláltak közül.

A kézi lista elsőbbséget élvez a géppel előállítottal szemben. Ha egy szócikk mindkét listában benne van, a gépiből töröljük. Ez lehetővé teszi a gépi összegképlet felülbírálását is (bár remélhetőleg erre nem lesz szükség).

A feladat tehát két lista összefésülése, melyet az olista script végez. Paraméterként megadható a gépi összegképletlista arra az esetre, ha az más módon (pl. a bot régebbi, a wikidump-ot használó verziójával) állt elő.

  • Bemenő fájl: kezi.txt, kembot.kepl.
  • Eredményfájl: hufo.kepl.

A futási idő néhány másodperc erős diszkhasználattal. Hálózatot nem, processzort minimálisan használ.

Az összegképlet lapok előállítása

Az összegképletek fent leírt alakú listájából wiki-lapokat állít elő egy külön könyvtárba. A gyakori elemekről külön lap készül, melynek minden vegyülete tartalmazza az elemet.

  • Bemenő fájl: welem.txt, wiki.txt, hufo.ali, hufo.kepl.
  • Eredményfájlok a huwiki alkönyvtárban.

A script neve okepl, mely a wtabl és wossz nevű (majdnem azonos) C-programot hívja. Az erőforrásigény elhanyagolható.

Statisztika

Lekérdezi a szócikkek létrehozási és módosítási idejét. Évenkénti/havonkénti statisztikát csinál.

A lapok feltöltése

Egyelőre tesztüzem van: kézzel.

Futtatási környezet

Raspberry pi, raspbian, forrásból letöltött debian-csomagokkal.

Jegyzetek

  1. 2018. ápriliss
  2. Az aceton-peroxid esetén a dimer és a trimer képlete is meg van adva a szócikkben, ugyanabban a paraméterben, amint ez a hibakimenetben is látható.