There are 2 previous versions of this script.
/*
Google Image Ripper
no more thumbnails, straight to the good stuff
http://dearcomputer.nl/gir/
*/
// ==UserScript==
// @name Google Image Ripper
// @namespace http://dearcomputer.nl/gir/
// @description No more thumbnails, straight to the good stuff! Rewrites Google Image Search results to show full images instead of the thumbnails.
// @include http://images.google.tld/*
// ==/UserScript==
//:::::::CHANGELOG:::::::
// ver 1.0 - 2008.10.13
// - initial release
//
// ver 1.1 - 2009.07.16
// - fixed after changed google image search markup
(function() {
// expand page title
document.title += " [ripped results by Google Image Ripper]";
//change logo
var googleLogo = selectNodes(document, document.body, "/html/body/form/table/tbody/tr/td/a/img");
googleLogo[0].src = "data:image/png,%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%00%BC%00%00%00(%08%03%00%00%00s%60%60%CC%00%00%00%19tEXtSoftware%00Adobe%20ImageReadyq%C9e%3C%00%00%00%0CPLTE%80%00%00%FF%00%00%00%00%00%FF%FF%FF%1C%DFr%2F%00%00%02%95IDATx%DA%ECX%8B%8E%830%0C%0B%CE%FF%FF%F3%E9NP%12%C7%81%F1%18%D3%A4%EB%E9%A4%8D%B5%D4Mm'%AD%F9%DC%80%DF%FF%DF%E6%A7%1B%96%E6%CF4%5B%E7u%DC%05%DE%9F%04%8F%DC%FC%EC%FC%1F%89%7C%82%7D%01%C0%EE%D0%9B%97e%14%B0k%C1%DB%19%8B%FB%C1G%B8%ABl%2F%A0%7F*%F0%01%3C%85%EF%00%60F%FF%20x%C6%BA%B0%FF%40%B0%9B%D0cs%99o%01%9F%82%A7)%04%EB%2C%86%3F%A9X%C3O%D2%B2%0C%B1%0D%92%90%81.%E3%91%A3%1B%3A%04X%D1x%CBF%25%895%A4%23%CB%1E%862~%DB%04%CF%F6%19%96%BA%8E%80j%04~E%0F%FE%01%19%AD~q%FF%CD%DA%C0%17%EF%1F%E0%9Df%07%E5%89%B2%AA%A8%D7%9AP%CA%00%5E%7C%BB%12k%E5)%22oj%E6%BA%9A%820I%3B%81%1B%5C%89!_%89%B1%BEm%FD-%F4%B4%5EW%14%86*%C7%40R%02%AF%E4R%E7%16%E0%E1%0C%D7%D3%2C%FE%F7%87%23%E0%E7%D1%13%3D%E1%1E%03%BC%12A%E0%0DYl%9E%24%91%8Fj%5Df%A6%09%9B%8F.%22t%E9%85%93i%EA%2C%05%CF%E9%2FX%0Caf%CB%0Do%A5%D9%D7NV%D3%AB%A8pD%1C%D5w9%1B(%C3%22SA%8FP%B2g%F2%96%C8%B3%0A%8B%99%8B%AE%15%BCG%E7%17%9BJ%999j%25%90%C7%C9%D3%E2%D6%CDnC%E5H%CB%D6%9D'%89%96.-%2C%01%F0%CE%E1%99x%91%60%B4X%18%17b%E8%8C%22%EDE%DD%A3%E4%3A%DA%03%12%23%9Cs)%CA%91%0E%10f%13%D3%855y.)%C3%EBr%26%93%96R%C1%83k%B6%00)%1F%9F%95%02%A8%D8%0B%1B%3A%83w%B6%B3%AD%EC%B7%3C%9A%CC%80%C2%1E%99%B4%0A%E7%B3%60%BD%B8%BF%AA%15%06%5B%A2%98%8Dr%A9g%D5%E4D)%F2V%E8%5E%C1K'c%AB%5C%D0%CB%03%9D%97%94%17%C5l%9A%BF%AAr%89%AE3%25%FDW~%F9%3ExW%2Cw5uS%E8%2CW%1F%BA6%14%18%B4%E7V%BC%D88%C9%C3%2Bx%B2%2B%92%D0(H%C9%9C%AC3It%17%02%0D%C4%B1%CBE%00%CDa%10%C8%AB%81%3C%ACt%95K%BAt%92%96%22%0F%B4%5B%15%B1%07G%A3R%E6%D41~%E7%C8e%09%D5%0BG%2F%AF%FB%07*%84.%9FM%8B%FA%F6%C1_%BB%A5%B9%F7%A2%0C%D9n%DE%06%FE%A5%1B%9B%0B%81%F9B%F0%2F%89%E5V%DA%3Cv%3D%7Cs%E4%F1m%E0%BB%83%F6%97%80o%8A%98%2F%01%EF%1F%84~%1D%BC%E33Z%BD%07%FC%3Bn%7F%1F%05%EF%FF%E0%8F%B7%1F%01%06%00%8B%A5O%1C%8F%EC8%15%00%00%00%00IEND%AEB%60%82";
// Get list of all anchor tags that have an href attribute containing the start and stop key strings.
var fullImgUrls = selectNodes(document, document.body, "//a[contains(@href,'/imgres?imgurl=')][contains(@href,'&imgrefurl=')]");
//clear existing markup
var imgContent = document.getElementById('ImgContent');
imgContent.innerHTML = "";
for(var x=1; x<=fullImgUrls.length; x++) {
//reverse X to show images in correct order using .insertBefore imgContent.nextSibling
var reversedX = (fullImgUrls.length) - x;
// get url using regexp
var fullUrl = fullImgUrls[reversedX].href.match( /\/imgres\?imgurl\=(.*?)\&imgrefurl\=/ );
// if url was fetched, create img with fullUrl src
if(fullUrl) {
newElement = document.createElement('img');
imgContent.parentNode.insertBefore(newElement, imgContent.nextSibling);
newElement.src = decodeURI(fullUrl[1]);
}
}
function selectNodes(document, context, xpath) {
var nodes = document.evaluate(xpath, context, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
var result = [];
for (var x=0; x<nodes.snapshotLength; x++) {
result.push(nodes.snapshotItem(x));
}
return result;
}
})();
