getall.pl
#!/usr/bin/perl # Encodage : UTF8 # S'utilise avec le XML BRUT !!! # my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); $year += 1900 ; $mon += 1 ; @ttlang = ( "af", "als", "an", "am", "ar", "as", "ast", "ay", "az", "bg", "bm", "bn", "bo", "br", "ca", "chr", "cs", "cy", "da", "de", "dog", "el", "en", "eo", "es", "et", "fa", "fi", "ff", "fr" , "ga", "gal", "gcf", "gl", "grc", "gu", "he", "hbo", "hi", "hu", "hy", "ia", "id", "ine", "io", "ja", "it", "ka", "ko", "kn", "ku", "la", "li", "ln", "lo", "lv", "mal", "mn", "ml", "nl", "oc", "or", "pa", "pau", "pl", "prv", "pt", "ro", "ru", "sv", "sa", "scn", "sl", "sq", "sr", "ta", "te", "th", "tr", "tt", "ty", "uk", "ur", "vi", "yi", "zh", "zu" ) ; $today = "$year-$mon-$mday" ; open( RESFILE,">$today.txt"); foreach ( @ttlang ) { $lang_cur = $_ ; `wget http://download.wikimedia.org/wiktionary/$lang_cur/all_titles_in_ns0.gz` ; `gunzip all_titles_in_ns0.gz`; open( XMLFILE, "< all_titles_in_ns0" ) ; $ligne = <XMLFILE> ; # la premier ligne ne compte pas while ( $ligne = <XMLFILE> ) { $ligne =~ s/_/ /g; print RESFILE "$lang_cur:$ligne" ; } `rm all_titles_in_ns0.gz` ; `rm all_titles_in_ns0` ; }