Szerkesztővita:Gyimbot/Összegképlet robot
A magyar Wikipédia adatait használó alkalmazás. Összegyűjti a kémiai lapokat, kigyűjti belőlük az összegképleteket, és továbbítja az összegképlet-kereső alkalmazásnak. Külső wikire listát készít a vegyületekről és néhány statisztikát a kémiai lapok keletkezéséről.
Az eredmények helye:
- összegképlet kereső
- a vegyületek és összegképletek listája a létrehozási és utolsó módosítás dátumával
- statisztikák
A bot nyílt forrású, GPLv2 licensszel. A forrásprogram és az AMD64-es bináris egy debian repository-ból érhető el. Maga a bot egy C-programból, több lua-programból és shell-szkriptből áll.
A bot raspberry pi-n fut, raspbian disztribúcióban, az előbb már említett debian repositoryból forrásból letöltött debian-csomagokkal, pillanatnyilag[1] naponta háromszor: 6, 14 és 20 óra után pár perccel. Mivel a szócikkek különbségét tölti csak le, és azok ritkán változnak, a futási idő általában egy percen belül marad.
Újdonságok az előző verzióhoz képest
szerkesztés- A bot csak az előző lekérdezés óta megváltozott szócikkeket kérdezi le újra, a régebbieket az előző futás eredményéből veszi. Ez nagyságrenddel csökkentette a hálózati forgalmat és ennek következtében a futási időt.
- A vegyület kémiai nevét az eddigi DISPLAYTITLE helyett az infoboxbeli névből veszi. (A szócikk neve és a DISPLAYTITLE is technikai megkötéseket alkalmaz a névbeli karakterekre és formázásukra.) A vegyületnév első nem helyjel betűjét nagybetűre változtatja (ezek sokhelyütt helytelenül szerepelnek az infoboxban is), és a vegyületneveket a kémiai rendezés szabályai szerint teszi sorrendbe. Az összes vegyület napra kész sorrendezett listája itt található.
- Az infoboxból kigyűjti a SMILES-okat is, bár egyelőre nem dolgozza fel őket.
- Kódrevízió, algoritmus egyszerűsítés.
Működés
szerkesztésLépések:
- A bot lekérdezi a szócikk névtérből a kémiai sablonokra hivatkozó lapokat és azok utolsó módosítási idejét. Kémiai sablonok:
{{Chembox}}
{{Chembox_new}}
(?){{Chembox új}}
(?){{Drugbox}}
(?){{Gyógyszeresdoboz}}
(?){{Vegyület_infobox}}
(?)
- Az előző lekérdezéshez képest módosult szócikkeket lekérdezi a Wikipédiából, és az infoboxból kinyeri a molekula nevét, összegképletét, SMILES-szát és időadatait. A nem módosult szócikkek adatait az előző lekérdezésből veszi. Időadatok: a szócikk létrehozási és utolsó módosítási ideje és szerkesztője.
- Az összegképleteket korrigálja a kézi listával, majd rendezi a kémiai (helyjelek nélküli) rendezés szabályai szerint.
- Az összegképleteket és vegyületneveket feltölti az összegképletkeresőt futtató webszerverre.
- A létrehozási és módosítási időkből wikilapot állít elő. Egy másik wikilapra statisztikákat készít a Wikipédia szócikkek létrehozásáról. A két wikilapot feltölti egy külső wikire.
Bővebb információ: man 1 kemiabot
(a kemiabot debian-csomag telepítése után).
Előzmények
szerkesztésA bot első változata a wikidump-ból, mysql adatbázisból dolgozott. A következő átdolgozáskor a mysql-t online lekérdezésre változtattam, amikor pedig elvették a megerősített szerkesztői jogomat, a bot két wikilapját átköltöztettem a saját szerveremre.
Továbbfejlesztési tervek
szerkesztés- A bot átalakítása az angol Wikipédia vegyületeire is. Azt remélem, hogy 2019 őszére készen leszek. (Meglévő adatokra fejlesztéskor az adatellenőrzés és -javítás a nagy munka.)
- Az összegképlet-kereső továbbfejlesztése a vegyület szerkezete szerinti keresésre. Valamikor 2020-ra becslem az indulást. (A SMILES-ok várhatóan az összegképleteknél is rosszabb állapotban lesznek, és itt új programokat is kell írni a SMILES-okból számolt összegképletek összehasonlításán kívül.)
Hiányosságok
szerkesztésAz összegképletek gyűjtéskor figyelmen kívül maradnak a polimerek és ionok (amelyek összegképletében betűvel adott az előfordulásszám, ill. amelyekben a töltést jelző előjel szerepel), valamint a kristályvizet tartalmazó vegyületek.
Ugyancsak kimaradnak a szabálytalan alakú összegképletek, amelyekben szabad szöveg, több képlet, vagy rosszul párosított HTML-elemek vannak, ill. amelyek a {{chem}}
(?) sablonnal adottak, és zárójelet tartalmaznak.
Jegyzetek
szerkesztés- ↑ 2019. május 31.
További információk
szerkesztésKapcsolódó lapok
szerkesztés- Sablon:Kembox/Chembox new (a kémiai sablonok dokumentációja)
- Wikipédia:Kémiaműhely
- Szerkesztő:Gyimbot/Összegképlet robot/1. változat
- sablonparszer