You may be more future proof by asking the API for the image url,
rather then trying to figure it out your self, as each wiki install
may have other factors that determine that director/hash structure
(i've seen places that have 3 levels, not 2)
http://en.wikipedia.org/w/api.php?action=query&prop=imageinfo&iipro…
On Mon, Dec 5, 2011 at 6:25 PM, Tommy Chheng <tommy.chheng(a)gmail.com> wrote:
I'm computing the url of an image by the
following:
(the md5 of the first char and the second two chars concat)
val md = MessageDigest.getInstance("MD5")
val messageDigest = md.digest(fileName.getBytes)
val md5 = (new BigInteger(1, messageDigest)).toString(16)
val hash1 = md5.substring(0, 1)
val hash2 = md5.substring(0, 2)
val urlPart = hash1 + "/" + hash2 + "/" + fileName
Most of the time, the function works correctly but on a few cases, it
is incorrect:
For "Stewie_Griffin.png", I get 2/26/Stewie_Griffin.png but the real
one is 0/02/Stewie_Griffin.png
The source file info is here:
http://en.wikipedia.org/wiki/File:Stewie_Griffin.png
http://upload.wikimedia.org/wikipedia/en/0/02/Stewie_Griffin.png
Any ideas why the hashing scheme doesn't work sometimes?
I posted this question on stackoverflow but I might be able to get a
better answer
here.http://stackoverflow.com/questions/8389616/does-wikipedia-use-differen…
--
@tommychheng
http://tommy.chheng.com
_______________________________________________
Mediawiki-api mailing list
Mediawiki-api(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-api