„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
Gyimhu (vitalap | szerkesztései)
Gyimhu (vitalap | szerkesztései)
→‎Statisztika: A repositoryt még nem frissítettem a statisztikai scriptekkel.
227. sor: 227. sor:
=== Statisztika ===
=== Statisztika ===
Lekérdezi a szócikkek létrehozási és módosítási idejét. Évenkénti/havonkénti statisztikát csinál.
Lekérdezi a szócikkek létrehozási és módosítási idejét. Évenkénti/havonkénti statisztikát csinál.

Az időket és a szerkesztőket a <tt>kemcre</tt> script kérdezi le, melynek futási ideje kb. megegyezik a szócikkek lekérdezési idejével. Bemenete az <tt>olista</tt> eredményfájlja: <tt>hufo.kepl</tt>. Az eredményfájl neve <tt>kemcre.ido</tt>. A többi statisztikai szkriptnek ez a bemenete.
* kemcrestat: kilistázza a paraméterként megadott időnél később készült összegképlet lapokat, és kiírja havonként külön táblázatban.
* kemcreev: az összegképletes szócikkek száma évenként, 2003 óta.
* kemcreszerk: a legtöbb összegképletes szócikket létrehozó szerkesztők listája, ugyancsak 2003 óta.


=== A lapok feltöltése ===
=== A lapok feltöltése ===

A lap 2018. április 10., 22:16-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

Új kémiai szócikkek évenként
Darab Év
1 2003
5 2004
119 2005
116 2006
359 2007
293 2008
139 2009
166 2010
244 2011
149 2012
318 2013
195 2014
105 2015
20 2016
27 2017
8 2018[2]

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
Céziumvegyületek Céziumvegyü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. Az utolsó futás ideje 2018. április 9.

Statisztikák

A különböző atomok száma[3]
Atom Vegyület
0 68
1 7[4]
2 454
3 778
4 687
5 210
6 59
7 1
Összesen: 2264
A legaktívabb szerkesztők[2]
Új
szócikk
Név
472 Szerkesztő:Gyimhu
333 Szerkesztő:Glikol
257 Szerkesztő:Tsch81
199 Szerkesztő:Szaszicska
195 Szerkesztő:Xxxx00
169 Szerkesztő:Cacattila
105 Szerkesztő:PhHG
42 Szerkesztő:Tetrodotoxin
26 Szerkesztő:Dorgan
23 Szerkesztő:Csd

Jegyzetek

  1. 2018. április
  2. a b 2018. április 9-ig.
  3. Pl. a Na2CO3 különböző atomjainak száma 3. 0 esetén nincs összegképlet, a 2 neve biner.
  4. Ciklopropatrién, Difoszfor, Dikén, Gyűrűs_ózon, Hexazin, Oktaazakubán, Ózon.

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, az atomszámok szerinti statisztika pedig lua nyelven készült. 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.

A bot raspberry pi-n fut, raspbian disztribúcióban, a már említett debian repositoryból, forrásból letöltött debian-csomagokkal.

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.[1] 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.

Az időket és a szerkesztőket a kemcre script kérdezi le, melynek futási ideje kb. megegyezik a szócikkek lekérdezési idejével. Bemenete az olista eredményfájlja: hufo.kepl. Az eredményfájl neve kemcre.ido. A többi statisztikai szkriptnek ez a bemenete.

  • kemcrestat: kilistázza a paraméterként megadott időnél később készült összegképlet lapokat, és kiírja havonként külön táblázatban.
  • kemcreev: az összegképletes szócikkek száma évenként, 2003 óta.
  • kemcreszerk: a legtöbb összegképletes szócikket létrehozó szerkesztők listája, ugyancsak 2003 óta.

A lapok feltöltése

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

Jegyzetek

  1. 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ó.