Get Picasaweb Image URL – 获取 Picasa Web 纯图片地址猴子脚本
Picasa Web 是 Google 旗下的免费电子相册服务。我看中他的原因有三:免费、空间大、允许外链。
但美中不足,Picasa Web 只提供图片页面地址和一个带链接的图片代码,而且只有 144px,288px,400px和800px四种尺寸(见下图)。其实还有从32px到1600px的23个尺寸。(详见sfufoet在煎蛋上的介绍)

为了更方便地取得图片地址(纯图片地址、带img标签的和bbcode三种形式),以及所有尺寸的图片(默认512px),Get Picasaweb Image URL 猴子脚本诞生了。(效果见下图)
同时感谢 sfufoet 童鞋给我的建议(图片地址三种形式和图片的多种尺寸)

BTW:此日志中的图片地址就是用该脚本取得的,hoho~~~
附上脚本代码:
PLAIN TEXT >> JAVASCRIPT:
-
// ==UserScript==
-
// @name Get Picasaweb Image URL
-
// @namespace http://phpz.org/
-
// @include http://picasaweb.google.com/*
-
// ==/UserScript==
-
-
var __suj_picasaweb_isinit = false;
-
var __suj_parent_input;
-
var __suj_imgurl_input = [];
-
var __suj_sizes = [32,48,64,72,104,144,160,200,220,288,320,400,512,576,640,720,800,912,1024,1152,1280,1440,1600];
-
var __suj_default_size_id = 12; // default 512px;
-
window.addEventListener('load', init, false);
-
function init()
-
{
-
var hakelinks = document.getElementsByClassName('lhcl_fakelink');
-
for(var ind in hakelinks)
-
hakelinks[ind].addEventListener('click',function(){!__suj_picasaweb_isinit && createUI();}, false);
-
var imglinks = document.getElementsByClassName('goog-icon-list-icon-img');
-
for(var ind in imglinks)
-
imglinks[ind].addEventListener('mouseout', function(){setTimeout(function(){!__suj_picasaweb_isinit && createUI();}, 1500);}, false);
-
}
-
-
function createUI()
-
{
-
__suj_parent_input = document.getElementById('lhid_snippet');
-
if(__suj_parent_input)
-
{
-
__suj_picasaweb_isinit = true;
-
var selecter = document.getElementById('lhid_snippet_size');
-
selecter.options.length = 0;
-
var op;
-
for(var s in __suj_sizes)
-
{
-
op = new Option();
-
op.text = __suj_sizes[s] + 'px';
-
op.value = __suj_sizes[s];
-
selecter.options.add(op);
-
}
-
selecter.selectedIndex = __suj_default_size_id;
-
var timgurl = document.getElementById('lhid_snippet');
-
timgurl.value = timgurl.value.replace(/\/s\d+\//i, '/s' + __suj_sizes[__suj_default_size_id] + '/');
-
var appendin = document.getElementsByClassName('gphoto-embed-options')[0].parentNode;
-
var mylabel = document.createElement('label');
-
__suj_imgurl_input.push(document.createElement('input'));
-
__suj_imgurl_input.push(document.createElement('input'));
-
__suj_imgurl_input.push(document.createElement('input'));
-
-
mylabel.innerHTML = '图片地址';
-
-
var myp = appendin.appendChild(document.createElement('p'));
-
myp.appendChild(mylabel);
-
for(var ind in __suj_imgurl_input)
-
{
-
__suj_imgurl_input[ind].className = 'gphoto-sidebar-inputbox';
-
__suj_imgurl_input[ind].addEventListener('mouseover', function(){getImageUrl();this.select();}, false);
-
__suj_imgurl_input[ind].addEventListener('click', function(){getImageUrl();this.select();}, false);
-
myp.appendChild(document.createElement('br'));
-
myp.appendChild(__suj_imgurl_input[ind]);
-
}
-
setTimeout(getImageUrl, 500);
-
}
-
}
-
-
function getImageUrl()
-
{
-
var str = __suj_parent_input.value;
-
str.match(/<img\s+src\s*\=\s*\"([^\"]+?)\"/i);
-
__suj_imgurl_input[0].value = RegExp['$1'];
-
__suj_imgurl_input[1].value = '<img src="'+RegExp['$1']+'" />';
-
__suj_imgurl_input[2].value = '[img]'+RegExp['$1']+'[/img]';
-
}
16 Comments »
Pingback by 轻松获得 picasaweb 的外链地址 | sfufoet's blog
2008/12/17 @ 22:38 #
[...] 轻松获得 picasaweb 的外链地址 December 17th, 2008 at 10:38 pm dofy 同学写了个获得 picasaweb 的外链地址的脚本,丢给我测试。我给他提了一大堆建议。然后就有了这个东西。。我就不废话了,直接转载。 Picasa Web 只提供图片页面地址和一个带链接的图片代码,而且只有 144px,288px,400px和800px四种尺寸(见下图)。其实还有从32px到1600px的32个尺寸。(详见sfufoet在煎蛋上的介绍) 为了更方便地取得图片地址(纯图片地址、带img标签的和bbcode三种形式),以及所有尺寸的图片(默认512px),Get Picasaweb Image URL 猴子脚本诞生了。(效果见下图) [...]
Comment by sfufoet
2008/12/17 @ 22:40 #
沙发。
Comment by Seven Yu
2008/12/17 @ 23:43 #
@sfufoet: 大腿?
Comment by Lucifr
2009/03/27 @ 23:37 #
非常好用的脚本,比老外写的那两个强多了,谢谢
Comment by Seven Yu
2009/03/28 @ 00:01 #
嘿嘿, 谢谢
Comment by 蜃
2009/03/28 @ 03:03 #
能不能吧“链接”中的“?feat=embedwebsite”等字样去掉,因为有时候会连接到相册封面,很奇怪,而且这个参数没用,谢谢
Comment by Lucifr
2009/04/01 @ 17:47 #
似乎google对picasa进行了改动,当前的脚本失灵了?
Comment by Seven Yu
2009/04/01 @ 21:54 #
@Lucifr: 多谢提醒, 脚本已经修改, 请安装最新版本(地址不变).
Comment by ys
2009/04/05 @ 10:13 #
感谢提供。
Comment by lancelot
2009/04/11 @ 04:07 #
貌似又用不了了?
Comment by lancelot
2009/04/11 @ 04:09 #
貌似现在又用不了了,是google更新了么?
Comment by linsk
2009/06/23 @ 20:47 #
大于800px的有效吗?
Comment by linsk
2009/06/23 @ 20:49 #
我记得外链最大尺寸是800px,现在很疑惑~~
Comment by Seven Yu
2009/06/25 @ 13:35 #
@linsk: 我试了一下, 没问题.
Comment by NightWatcher
2009/07/15 @ 23:17 #
貌似最近这个脚本又不能用了。我的环境是Firefox3.5,Get Picasaweb Image URL的版本是2.1。
Comment by Seven Yu
2009/07/18 @ 18:41 #
已更新, 请重新安装
RSS feed for comments on this post. TrackBack URI
Leave a comment