Migration des wikis : Différence entre versions

De Wicri Base 1.28
imported>Jacques Ducloy
(Comparaisons)
imported>Jacques Ducloy
(Modèles à éviter de recopier)
Ligne 104 : Ligne 104 :
 
Modèle:Modèle utilisant les ParserFunctions
 
Modèle:Modèle utilisant les ParserFunctions
 
Modèle:Modèle utilisant les ParserFunctions/Documentation
 
Modèle:Modèle utilisant les ParserFunctions/Documentation
 +
Modèle:Doc modèle
 +
Modèle:Doc modèle/Documentation
 
...
 
...
 
</source>
 
</source>

Version du 25 juin 2017 à 14:16

Cette page est un recueil de notes pour la migration des wikis.

Variables shell

WIKI=http://ticri.univ-lorraine.fr/wicri-base.de
WIKI=http://ticri.univ-lorraine.fr/wicri.de
WIKI=http://ticri.univ-lorraine.fr/wicri-europa.de
WIKI=http://ticri.univ-lorraine.fr/wicri-base.pt
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Europe/de

WIKI=http://ticri.univ-lorraine.fr/wicri-music.en
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Musique/en

WIKI=http://ticri.univ-lorraine.fr/wicri-meta.en
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Meta/en

WIKI=http://ticri.univ-lorraine.fr/wicri-saarland.en
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Europe/Allemagne/Sarre/en

WIKI=http://ticri.univ-lorraine.fr/wicri-lor.en
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Europe/France/Lorraine/en

WIKI=http://ticri.univ-lorraine.fr/wicri-france.en
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Europe/France/en


WIKI=http://ticri.univ-lorraine.fr/wicri-gr.de
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Europe/GrandeRegion/de

WIKI=http://ticri.univ-lorraine.fr/wicri-gr.en
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Europe/GrandeRegion/en

WIKI=http://ticri.univ-lorraine.fr/wicri-asie.fr
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Asie/fr

WIKI=http://ticri.univ-lorraine.fr/wicri-meta.fr
WIKI_TARGET=https://lorexplor.istex.fr/Wicri/Meta/fr

Vérifications

Pour obtenir la liste des espaces de nom.

curl "$WIKI/api.php?action=query&meta=siteinfo&siprop=namespaces&format=xml" | SxmlIndent
curl "$WIKI_TARGET/api.php?action=query&meta=siteinfo&siprop=namespaces&format=xml" | SxmlIndent

Pour obtenir la liste des pages de l'espace principal (en fait si elle dépasse 500)

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=500" \
   2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1 | wc

Les modèles

Pour les wikis anglais

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=10"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  | sort -u > templateOld

curl "$WIKI_TARGET/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=10"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  | sort -u > templateTarget

diff templateOld templateTarget | grep "<"

Pour les wikis français

Modèles à recopier

Modèle:Wicri thématique voir laboratoire
Modèle:Wicri thématique voir laboratoire/sémantique
Modèle:Wicri thématique voir personne
Modèle:Wicri thématique voir personne/sémantique
Modèle:Wicri thématique voir revue
Modèle:Wicri thématique voir revue/sémantique
Modèle:Wicri thématique voir région
Modèle:Wicri thématique voir région/sémantique
Modèle:Wicri thématique voir université
Modèle:Wicri thématique voir université/sémantique
Modèle:Wicri thématique voir ville
Modèle:Wicri thématique voir ville/sémantique
Modèle:Infobox Organisme
Modèle:Nowrap begin
Modèle:Nowrap end
Modèle:Infobox sémantique manifestation extensions
Modèle:Infobox sémantique personne extensions
Modèle:Infobox sémantique université extensions
Modèle:Accès géographique
Modèle:Logo Wicri Rhénanie-Palatinat

Modèles à éviter de recopier

cat <<... >modeleNoCopy
Modèle:Job queue
Modèle:Documentation modèle
Modèle:Documentation modèle compliqué en sous-page
Modèle:Documentation modèle compliqué en sous-page/Documentation
Modèle:Documentation modèle en sous-page
Modèle:Documentation modèle utilisant les ParserFunctions en sous-page
Modèle:Modèle utilisant les ParserFunctions
Modèle:Modèle utilisant les ParserFunctions/Documentation
Modèle:Doc modèle
Modèle:Doc modèle/Documentation
...

Comparaisons

(
curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=10"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=500&apfrom=L&apnamespace=10"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1 
) | sort -u > modeleOld

(
curl "$WIKI_TARGET/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=10"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  

curl "$WIKI_TARGET/api.php?action=query&list=allpages&format=xml&aplimit=500&apfrom=L&apnamespace=10"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1 
) | sort -u > modeleTarget

diff modeleOld modeleTarget | grep "<"

diff modeleOld modeleTarget | grep "<" | cut -b 2-

Pour comparer des listes

diff modeleSemNew modeleSemOld | grep ">" | cut -b 3- | grep "Modèle:" | SxmlSelect -p " [[@1]]"
diff modeleSemNew modeleSemOld | grep ">" | cut -b 3- | grep "Attribut:" | SxmlSelect -p " [[@1]]"
diff modeleSemNew modeleSemOld | grep ">" | cut -b 3- | grep "Catégorie:" | SxmlSelect -p " [[:@1]]"

Les catégories

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=14"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  | sort -u > categoriesOld

curl "$WIKI_TARGET/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=14"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  | sort -u > categoriesTarget

diff categoriesOld categoriesTarget | grep "<"

diff categoriesOld categoriesTarget | grep "<" | cut -b 2-

Les attributs

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=102"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  | sort -u > attOld

curl "$WIKI_TARGET/api.php?action=query&list=allpages&format=xml&aplimit=500&apnamespace=102"  2>/dev/null  |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1  | sort -u > attTarget

diff attOld attTarget | grep "<"

diff attOld attTarget | grep "<" | cut -b 2-

Suite à améliorer

 

(
curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=1"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=2"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=3"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=4"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=5"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=8"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=9"  2>/dev/null  
) |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1


(
curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=11"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=12"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=13"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=15"  2>/dev/null
)    |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1


(

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=103"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=104"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=105"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=106"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=107"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=108"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=109"  2>/dev/null  

)    |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1

(

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=500"  2>/dev/null  

curl "$WIKI/api.php?action=query&list=allpages&format=xml&aplimit=100&apnamespace=501"  2>/dev/null  

) |SxmlSelect -s api/query/allpages/p/attribute::title -p @s1

Pour les images

 curl "http://ticri.univ-lorraine.fr/wicri.pool/api.php?action=query&list=allimages&ailimit=5&aifrom=COLLN&aiprop=url&format=xml" |SxmlIndent

curl "http://ticri.univ-lorraine.fr/wicri.pool/api.php?action=query&list=allimages&ailimit=50&aifrom=COLLN&aiprop=url&format=xml"  2>/dev/null  | SxmlSelect -s api/query/allimages/img/attribute::url -p @s1

 curl "$WIKI/api.php?action=query&list=allimages&ailimit=50&aiprop=url&format=xml" |SxmlIndent

curl "$WIKI/api.php?action=query&list=allimages&ailimit=50&aiprop=url&format=xml" | SxmlSelect -s api/query/allimages/img/attribute::url -p @s1