Ezen az oldalon egy technikai leírást olvashatsz a Wikipédia szerkesztéséről. Tartsd szem előtt, hogy nem minden ajánlott, ami technikailag megvalósítható! |
A Wikipédia szócikkek szövegei, a laptörténetek, a naplók és minden más adat (a képeket és egyéb fájlokat kivéve) a Wikimédia Alapítvány központi adatbázisszerverén tárolódik. Erről az adatbázisról (az érzékeny adatok, mint pl. felhasználói beállítások vagy nem nyilvános naplók kivételével) néhány hetente másolatok készülnek, amelyek a download.wikipedia.org címről letölthetőek, és egy adatbázis-kezelőbe betöltve szinte bármilyen lista, statisztika vagy egyéb információ kinyerhető belőlük. Ez a lap ehhez nyújt útmutatást. Ha nem tudsz egyedül megfogalmazni vagy futtatni egy lekérdezést, a Wikipédia:SQL-futtatási kérések oldalon kérhetsz segítséget.
Ez az útmutató régebben készült. Azóta elérhetővé vált egy webes szolgáltatás, amelynek segítségével saját adatbázis-kezelő telepítése és saját adatbázispéldány letöltögetése helyett az interneten futtathatod a lekérdezéseidet. Azért is érdemes kipróbálni, mert így nem a saját géped erőforrásait fogyasztja a lekérdezés, hanem egy erre felkészített hardverkonfiguráción futtathatod.
A Quarry címe: https://quarry.wmflabs.org/. A bejelentkezéshez az itteni azonosítódat használhatod OAuth hitelesítésen keresztül. A lekérdezéseid mindenki számára láthatóak lesznek.
Az eszköz leírása, egyelőre csak angolul: Research:Quarry. Az adatbázis tábláinak leírását a fejlécben is megtalálod.
s/(\ |\|)//g;s/^/*\[\[/;s/$/\]\]/
Az előkészületek körülbelül egy órát vesznek igénybe szélessávú kapcsolattal. Ezeket csak egyszer, a legelső alkalommal kell elvégezni:
A továbbiakat minden alkalommal meg kell ismételni, amikor frissíteni akarod az adatbázist:
CREATE DATABASE huwiki;
{{A dump dátuma}}
(?) sablont, ha mindig értesülni akarsz a legújabb változat megjelenéséről.java -jar mwdumper.jar fájlnév.xml --output=file:fájlnév.sql --format=sql:1.5
java -jar mwdumper.jar fájlnév.xml.bz2 --output=file:fájlnév.sql --format=sql:1.5
java -client -classpath mwdumper-1.16.jar;mysql-connector-java-5.1.22\mysql-connector-java-5.1.22-bin.jar;commons-compress-1.4.1.jar org.mediawiki.dumper.Dumper "--output=mysql://127.0.0.1/huwiki?user=root&password=jelszó" --format=sql:1.5 huwiki-latest-pages-articles.xml.bz2
mysql -u root -p huwiki < tables.sql
Ha bármi problémád vagy kérdésed van az itt leírtakkal, jelezd a vitalapon.
Elavult |
---|
Módosítók[szerkesztés]To limit results:
You can also add an offset;
Lekérdezések új szerkesztők megtalálásához[szerkesztés]Here's a couple of queries to find the 20 most newly created users - useful to find people to give welcome messages. It only counts users that have made edits (most users who create a login never make a single contribution and are just passing by, so it's not really worth welcoming them).
The above query gives the user names of the 20 most recently created users and the number of edits they have made. The query is not perfect - only edits that have not been 'overwritten' by other edits are counted here. To do the same thing looking only at 'overwritten' edits use:
Lekérdezések csonkok megtalálásához[szerkesztés]For short pages containing "see" (takes about 2 seconds):
finds all pages with less than 50 chars. Lekérdezések egyetlen változattal rendelkező cikkek megtalálásához[szerkesztés]SELECT cur_title FROM cur WHERE cur_is_new AND cur_namespace=0; Finds all pages that have only been edited once. Lekérdezések hibás hivatkozások kiszűréséhez[szerkesztés]Dupla átirányítások[szerkesztés]Article namespace:
Talk namespace:
These queries are slow. You may have to reduce the limit for them to work. Egyéb[szerkesztés]List all articles that link to a file on http://meta.wikipedia.com (takes 2-3 seconds):
To find articles that link to jpegs, both external and internal, with the old non-[[Image:]] style (this isn't perfect, it also finds a few other pages):
For articles containing a link to itself (!!24 seconds!!)
For redirects to non-existing pages (note: when a page is found that is redirecting correctly, it usually means that there is text going with the redirect, 2-4 seconds):
Lekérdezés olyan szócikkek kiszűréséhez, amelyek első mondatában nincs kiemelés[szerkesztés]Which means they don't have bold titles in the first sentence!
Lekérdezés olyan szócikkek kiszűréséhez, amelyek első mondatában nincs kiemelés, és nem egyértelműsítő lapok[szerkesztés]Same as above only removes disambiguation pages which don't need bolds. SELECT cur_title FROM cur WHERE cur_namespace=0 AND cur_is_redirect=0 AND cur_text NOT LIKE "%'''%" AND cur_text NOT LIKE "%<b>%" AND cur_text NOT LIKE "%disambig%" LIMIT 50 Lekérdezés allapok megtalálásához[szerkesztés]This finds all articles containing a "/" character; most of these are subpages.
Lekérdezések statisztikákhoz[szerkesztés]For a count of how many articles are more than 1500 characters long, use:
Lekérdezések blokkolt felhasználókról[szerkesztés]
returns the blocked IP addresses, and the first entry for the blocking (some IP addresses have been blocked by multiple people), ordered by date. This is mostly unnecessary (but may be of interest as an example query), as the Special:Ipblocklist returns similar information. Find all pages with "it's" for spellchecking purposes. WARNING: takes a long time. May want to apply a limit (see above)
Vandalizmus[szerkesztés]When a certain IP-number or user has been found to be vandalising, it might be that some of their problems may already have been solved by someone else and others not. The following query shows those pages which the vandal (or otherwise problematic user) was the last to edit:
If the vandal is a registered user, use their Username for name, if not, use their IP-number. Lekérdezés fejlesztők, adminisztrátorok megtalálásához[szerkesztés]
Képek[szerkesztés]The queries here produce valid links when the results are copied and pasted into a page. Not very pretty, but functional. With 70,000 images in en, these take about 60 seconds to run the first time. Egy szerkesztő összes képe (beleértve a régi változatokat is)[szerkesztés]select distinct concat('<br>[[:Image:', img_name, ']]') as name from image where img_user_text='USER_NAME_HERE' union select distinct concat('<br>[[:Image:', oi_name , ']]') as name from oldimage where oi_user_text='USER_NAME_HERE' order by name asc; Egy szerkesztő összes képe (csak az aktuális változatok)[szerkesztés]select distinct concat('<br>[[:Image:', img_name, ']]') as name from image where img_user_text='USER_NAME_HERE' order by name asc; Minden képleíró lap, amit egy adott szerkesztő szerkesztett[szerkesztés]select distinct concat('<br>[[:Image:', cur_title, ']]') as title from cur where cur_namespace=6 and cur_user_text='USER_NAME_HERE' union select distinct concat('<br>[[:Image:', old_title , ']]') as title from old where old_namespace=6 and old_user_text='USER_NAME_HERE' order by title asc; |