Discussion:Liste des poissons d'eau douce de l'Afrique du Sud
De Wicri Eau
Cette page décrit les scripts permettant de créer cette page et de l'utiliser dans des serveurs d'exploration.
Création de la page
On utilise un filtre lex qui est décrit sur Wicri/Outils et qui est rangé sous $WICRI_ROOT/Wicri/Eau/Sources/FishBase
URL_FISH_BASE="http://www.fishbase.org/Country/CountryChecklist.php"
(
curl $URL_FISH_BASE"?c_code=710&vhabitat=fresh&csub_code=" 2>/dev/null
curl $URL_FISH_BASE"?resultPage=2&c_code=710&vhabitat=fresh&csub_code=" 2>/dev/null
curl $URL_FISH_BASE"?resultPage=3&c_code=710&vhabitat=fresh&csub_code=" 2>/dev/null
curl $URL_FISH_BASE"?resultPage=4&c_code=710&vhabitat=fresh&csub_code=" 2>/dev/null
) | ./fishBaseExtractTable.bin | SxmlSelect -s table/tr/td/i/a/1 -p "* ''[[@s1]]''" | sort
Création d'une liste de genres
Toujours sous $WICRI_ROOT/Wicri/Eau/Sources/FishBase
cat <<... > listGenre.lex
%START GENRE
%%
^"*"[ ]*.."[[" BEGIN GENRE;
<GENRE>[a-z] ECHO;
<GENRE>[A-Z] putchar(tolower(*yytext));
<GENRE>" " {printf("\t1\n"); BEGIN 0;}
. ;
\n ;
%%
main()
{
yylex();
}
...
lex listGenre.lex
gcc lex.yy.c -ll -o listGenre.bin
WicriGetPage -l wicri-eau.fr -p "Liste des poissons d'eau douce de l'Afrique du Sud" \
| ./listGenre.bin| SxmlSelect -p @1 -p @1 | sort -u > listGenrePoissonAfriqueDuSud.dict
Création d'une liste d'espèces
Toujours sous $WICRI_ROOT/Wicri/Eau/Sources/FishBase
cat <<... > listSpecies.lex
%START GENRE
%%
^"*"[ ]*.."[[" BEGIN GENRE;
<GENRE>[a-z] ECHO;
<GENRE>[A-Z] putchar(tolower(*yytext));
<GENRE>"]]" {printf("\t1\n"); BEGIN 0;}
<GENRE>. ECHO;
. ;
\n ;
%%
main()
{
yylex();
}
...
lex listSpecies.lex
gcc lex.yy.c -ll -o listSpecies.bin
WicriGetPage -l wicri-eau.fr -p "Liste des poissons d'eau douce de l'Afrique du Sud" \
| ./listSpecies.bin| SxmlSelect -p @1 -p @1 | sort -u > listSpeciesPoissonAfriqueDuSud.dict