X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/ffee0c08773a4a5c4c8848193b6992a9fad4c824..4e71d82512759ed7da92d213ac66d006dae456a1:/tools/convert-stats-wikimedia.pl diff --git a/tools/convert-stats-wikimedia.pl b/tools/convert-stats-wikimedia.pl old mode 100644 new mode 100755 index 42faf20..1e9b1c3 --- a/tools/convert-stats-wikimedia.pl +++ b/tools/convert-stats-wikimedia.pl @@ -1,8 +1,15 @@ -#!perl -n +#!/usr/bin/perl -n use 5.010; use strict; use warnings; our %count; our $mobile; +if (m{} .. m{}) { + $count{-source} = 'http://stats.wikimedia.org/archive/squid_reports/'; + $count{-title } = 'Wikimedia'; + $count{-date} = $1 if m{ period: (?:\d+ )?(\w+ \d+) }; + next; +} + # select relevant columns />Browser versions(.*)/ ... m{} && last or next; my ($tr, $id, $count2, $count) = split /(?:<[^>]*>)+/; @@ -16,30 +23,27 @@ $count =~ s/%$//; $version //= 0; given ($browser) { when (['Firefox', 'Iceweasel']) { - $browser = 'gecko'; + $browser = 'firefox'; continue; } when ('MSIE') { - $browser = 'trident'; + $browser = 'ie'; continue; } when ('Opera') { - $browser = $mobile ? 'op_mob' : 'presto'; + $browser = $mobile ? 'op_mob' : 'opera'; for ($version) { if (m{\(Mini(.*)\)$}) { $browser = 'op_mini'; ($_) = $1 =~ m{^/(\d+)}; continue; } - s/\d\d\.\d\K.*// or do { - # major part only, except for ≥v9.6 - $_ ge '9.6' ? ($_ = '9.6') : (s/\..*//); - }; + s/^\d*\.\d\K.*//; # one significant digit } continue; } when ('Safari') { - $browser = $mobile ? 'ios_saf' : 'webkit_saf'; + $browser = $mobile ? 'ios_saf' : 'safari'; my $numversion = join('.', map { sprintf '%03d', $_ } split /\./, $version); $numversion =~ s/6(?=\d{3})//; # incomparable 6532.22 → 523 for ( @@ -50,7 +54,7 @@ given ($browser) { [ '525' => '2' ], [ '528' => '3' ], [ '531' => '3.2' ], - [ '531.022' => '4.1' ], + [ '531.022' => '4' ], [ '533' => '4.2' ], [ '534' => '4x' ], ) : ( @@ -68,7 +72,7 @@ given ($browser) { } } when ('Chrome') { - $browser = 'webkit_chr'; + $browser = 'chrome'; s/\.\d+$// for $version; } when ('Android') {