Help:Export/nl
| Let op: Als u deze pagina bewerkt, gaat u akkoord met het vrijgeven van uw bijdragen onder de CC0. Zie Helppagina’s Publiek Domein voor meer informatie. Sommige oude revisies van deze pagina zijn geïmporteerd onder de CC BY-SA licentie. Alleen nieuwe bijdragen zijn publieke domein. |
Wiki-pagina's kunnen in een speciaal XML formaat worden geëxporteerd naar upload import naar een andere MediaWiki-installatie (als deze functie is ingeschakeld op de doel-wiki en de gebruiker daar een beheerder is) of op een andere manier worden gebruikt, bijvoorbeeld voor het analyseren van de inhoud. Zie Syndicatiefeeds voor het exporteren van andere informatie, behalve pagina's en Help:Import voor het importeren van pagina's.
Hoe te exporteren
Er zijn ten minste drie manieren om pagina's te exporteren:
- Plak de naam van de pagina's in het veld in Special:Export (of gebruik URL's zoals //www.mediawiki.org/wiki/Special:Export/FULLPAGENAME).
- Het back-up script
dumpBackup.phpdumpt alle wikipagina's in een XML-bestand.dumpBackup.phpwerkt alleen op MediaWiki 1.5 en nieuwer. U moet directe toegang hebben tot de server om dit script uit te voeren. De dumps van Wikimedia-projecten worden regelmatig beschikbaar gesteld op https://dumps.wikimedia.org/. - Gebruik het Pywikibot-framework. Dit wordt hier niet uitgelegd.
Daarnaast kunt u de SQL-database kopiëren. Zo werden dumps van de database beschikbaar gesteld voor MediaWiki 1.5. (Dit wordt hier niet verder uitgelegd.)
'Special:Export' gebruiken
Standaard wordt alleen de huidige versie van een pagina opgenomen. Als optie kunt u alle versies dumpen met datum, tijd, gebruikersnaam en bewerkingssamenvatting. Als optie kan de laatste versie van alle rechtstreeks of indirect aangeroepen sjablonen worden geëxporteerd.
Ga als volgt te werk om meerdere pagina's te exporteren, bijvoorbeeld alle pagina's van een namespace.
De namen ophalen van de te exporteren pagina's
- Ga naar Special:Allpages en kies de gewenste artikelen/bestanden.
- Kopieer de lijst met paginanamen naar een teksteditor.
- Zet alle paginanamen op aparte regels.
- U kunt dit relatief snel bereiken als u de zoek- en vervangfunctie van uw teksteditor gebruikt om elke 'tab' in een 'nieuwe regel' te veranderen.
- U kunt ook de onbewerkte HTML naar een editor kopiëren en elke tabelcel wijzigen in een tabelrij met één cel.
- Als u shell- en MySQL-toegang tot uw server hebt, kunt u dit script gebruiken:
mysql -umike -pmikespassword -hlocalhost wikidbname
select page_title from wiki_page where page_namespace=0
EOF
NB: vervang mike en mikespassword door uw eigen toegangscodes. In dit voorbeeld worden ook tabellen weergegeven met de prefix wiki_
- Voeg de prefix van de namespace toe aan de paginanamen (bijvoorbeeld 'Help:Contents'), tenzij de geselecteerde namespace de main namespace is.
- Herhaal de bovenstaande stappen voor de andere gewenste namespaces (bijv. Category:, Template:, etc.).
Een soortgelijk script voor PostgreSQL-databases ziet er als volgt uit:
psql -At -U wikiuser -h localhost wikidb -c "select page_title from mediawiki.page"
NB: vervang wikiuser met uw eigen toegangscode, de database vraagt u om een wachtwoord. Dit voorbeeld toont tabellen zonder de prefix wiki_ en met de als onderdeel van de tabelnaam de gespecificeerde namespace.
Het exporteren
- Ga naar Special:Export en plak alle paginanamen in het invoerveld, zorg dat er geen lege regels zijn.
- Klik op
Exporteren - Bewaar de resulterende XML in een bestand met behulp van de opslagfunctie van uw browser.
En tenslotte...
- Open het XML-bestand in een teksteditor. Scroll naar beneden naar check for error messages.
Nu kunt u dit XML-bestand gebruiken om te gaan importeren.
De hele geschiedenis exporteren
Het exporteren van de revisiegeschiedenis kan wenselijk zijn om auteursinformatie en toeschrijving te behouden. In het interfacesysteem Special:Export kan met een selectievakje geselecteerd worden of de volledige geschiedenis (alle versies van een artikel) of alleen de meest recente versie van artikelen moet worden geëxporteerd. Er worden maximaal 100 revisies teruggegeven; andere revisies kunnen worden aangevraagd zoals beschreven in Parameters to Special:Export.
Exportformaat
Het formaat van het XML-bestand dat u ontvangt is op alle manieren gelijk.
Het is gecodificeerd in XML Schema op https://www.mediawiki.org/xml/export-0.11.xsd
Dit formaat is niet bedoeld voor het bekijken in een webbrowser.
Sommige browsers tonen u een mooie XML met + en - links om geselecteerde delen te bekijken of te verbergen.
De XML-bron kan ook worden bekeken met behulp van de functie "pagina-bron bekijken" van de browser, of na het lokaal opslaan van het XML-bestand, met een programma van keuze.
Als u de XML-bron rechtstreeks leest, zal het niet moeilijk zijn om de echte wikitext te vinden.
Als u geen speciale XML-editor gebruikt, worden < en > als < en > getoond, om een conflict met XML-tags te voorkomen; om dubbelzinnigheid te voorkomen, wordt & als & gecodeerd.
In de huidige versie bevat het exportformaat geen XML-vervanging van de wiki-markering (zie Wikipedia DTD voor een ouder voorstel). U krijgt alleen de wikitext als u het artikel bewerkt.
Voorbeeld
<mediawiki xml:lang="en">
<page>
<title>Page title</title>
<restrictions>edit=sysop:move=sysop</restrictions>
<revision>
<timestamp>2001-01-15T13:15:00Z</timestamp>
<contributor><username>Foobar</username></contributor>
<comment>I have just one thing to say!</comment>
<text>A bunch of text here.</text>
<minor />
</revision>
<revision>
<timestamp>2001-01-15T13:10:27Z</timestamp>
<contributor><ip>10.0.0.2</ip></contributor>
<comment>new!</comment>
<text>An earlier revision.</text>
</revision>
</page>
<page>
<title>Talk:Page title</title>
<revision>
<timestamp>2001-01-15T14:03:00Z</timestamp>
<contributor><ip>10.0.0.2</ip></contributor>
<comment>hey</comment>
<text>WHYD YOU LOCK PAGE?? i was editing that</text>
</revision>
</page>
</mediawiki>
DTD
Hier is een onofficiële, korte Definitie documenttype versie van het formaat. Als u niet weet wat een DTD is, sla dan dit gedeelte maar over.
<!ELEMENT mediawiki (siteinfo,page*)>
<!-- versie bevat het versienummer van het formaat (nu 0.3) -->
<!ATTLIST mediawiki
version CDATA #REQUIRED
xmlns CDATA #FIXED "https://www.mediawiki.org/xml/export-0.3/"
xmlns:xsi CDATA #FIXED "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation CDATA #FIXED
"https://www.mediawiki.org/xml/export-0.3/ https://www.mediawiki.org/xml/export-0.3.xsd"
xml:lang CDATA #IMPLIED
>
<!ELEMENT siteinfo (sitename,base,generator,case,namespaces)>
<!ELEMENT sitename (#PCDATA)> <!-- Naam van de wiki -->
<!ELEMENT base (#PCDATA)> <!-- URL van de hoofdpagina -->
<!ELEMENT generator (#PCDATA)> <!-- MediaWiki versienummer -->
<!ELEMENT case (#PCDATA)> <!-- Hoe hoofdletters in paginanamen worden behandeld -->
<!-- mogelijke waarden: 'first-letter' | 'case-sensitive'
Optie 'Case-insensitive' is voor de toekomst gereserveerd -->
<!ELEMENT namespaces (namespace+)> <!-- Lijst van namespaces en prefixen -->
<!ELEMENT namespace (#PCDATA)> <!-- Bevat namespace prefix -->
<!ATTLIST namespace key CDATA #REQUIRED> <!-- Intern namespace nummer -->
<!ELEMENT page (title,id?,restrictions?,(revision|upload)*)>
<!ELEMENT title (#PCDATA)> <!-- Titel met namespace prefix -->
<!ELEMENT id (#PCDATA)>
<!ELEMENT restrictions (#PCDATA)> <!-- Optionele paginabeperkingen -->
<!ELEMENT revision (id?,timestamp,contributor,minor?,comment?,text)>
<!ELEMENT timestamp (#PCDATA)> <!-- Volgens ISO8601 -->
<!ELEMENT minor EMPTY> <!-- Kleine vlag -->
<!ELEMENT comment (#PCDATA)>
<!ELEMENT text (#PCDATA)> <!-- Wikisyntaxis -->
<!ATTLIST text xml:space CDATA #FIXED "preserve">
<!ELEMENT contributor ((username,id) | ip)>
<!ELEMENT username (#PCDATA)>
<!ELEMENT ip (#PCDATA)>
<!ELEMENT upload (timestamp,contributor,comment?,filename,src,size)>
<!ELEMENT filename (#PCDATA)>
<!ELEMENT src (#PCDATA)>
<!ELEMENT size (#PCDATA)>
XML-export verwerken
Vele hulpmiddelen kunnen de geëxporteerde XML verwerken. Als u een groot aantal pagina's verwerkt (bijvoorbeeld een hele dump), zult u het document waarschijnlijk niet in het hoofdgeheugen kunnen laden, dus heeft u een parser nodig op basis van SAX of andere event-driven methoden.
U kunt ook reguliere expressies gebruiken om delen van de XML-code rechtstreeks te verwerken. Dit kan sneller zijn dan andere methoden, maar wordt niet aanbevolen omdat het moeilijk te onderhouden is.
Voeg hier a.u.b. methoden en hulpmiddelen toe voor het verwerken van XML-export:
- Parse MediaWiki Dump (crates.io) is een Rust-hulpmiddelendoos om XML-dumps te parsen.
Details en praktisch advies
- Om de namespace van een pagina te bepalen moet u de titel laten overeenstemmen met de in
/mediawiki/siteinfo/namespaces/namespacegedefinieerde prefixen - Mogelijke beperkingen zijn
sysop- Beveiligde pagina's
Waarom exporteren
Waarom niet gewoon een dynamische database-download gebruiken?
Stel dat u een stuk software bouwt dat op bepaalde punten informatie weergeeft die afkomstig is van Wikipedia. Als u wilt dat het programma de informatie op een andere manier weergeeft dan in de productie-versie, heeft u waarschijnlijk de wikicode nodig die is gebruikt om het in te voeren, in plaats van de aangemaakte HTML.
Ook als u alle gegevens wilt hebben, wilt u deze waarschijnlijk op de meest efficiënte manier overzetten. De Wikimedia-servers moeten behoorlijk wat werk verzetten om de wikicode om te zetten in HTML. Dat is tijdrovend, zowel voor u als voor de Wikimedia-servers, dus het simpelweg spideren van alle pagina's is niet de juiste weg.
Om toegang te krijgen tot een artikel in XML, één voor één, ga naar Special:Export/Title_of_the_article