【发布时间】:2010-07-12 23:12:29
【问题描述】:
我的一个朋友在 webshots.com 上上传了她在过去一年左右拍摄的大约 20 个自然照片画廊,但是,我刚刚为她购买了一个付费的 Flickr 帐户作为生日礼物,我想下载她的所有照片都来自网络照片,并准备好在她收到有关她的帐户升级的电子邮件后上传到 Flickr(她在国外 - 无法访问互联网。)
我无法访问她的 webshots 帐户,所以我求助于 Greasemonkey 和 DownThemAll 开始将她的图片保存到我桌面上的文件夹中。
我对 javascript 有点陌生,所有可用于 Greasemonkey 的“用户脚本”并不能完全满足我的需要。
加载图库页面时:
(http://[category].webshots.com/album/[album-id]),
我需要 Greasemonkey 脚本来查找所有图片链接:
(http://[category].webshots.com/photo/[photo-page-id])
并重写它们以反映此方案:
(http://community.webshots.com/photo/fullsize/[photo-page-id])
这很容易做到吗?似乎是这样,但我似乎无法正确处理。
这是我当前不起作用的 Greasemonkey 脚本:
// ==UserScript==
// @name Webshot Gallery Fixer
// @namespace WGF
// @description Fixes webshot galleries
// @include http://*.webshots.com/*
// ==/UserScript==
var links = document.getElementsByTagName("a"); //array
var regex = /^(http:\/\/)([^\.]+)(\.webshots\.com\/photo\/)(.+)$/i;
for (var i=0,imax=links.length; i<imax; i++) {
links[i].href = liks[i].href.replace(regex,"$1community$3fullsize/$4");
}
【问题讨论】:
-
我不确定您要在这里完成什么,但似乎手工完成实际上可能比为您编写代码更快。
-
当您从其中一个答案复制代码并将其编辑到您的问题中时,您应该做一个注释。否则它会变得混乱。在这种情况下,您在复制我的答案时复制了一个错字。正如@Brock Adams 指出的那样,您只需修复错字,它应该对您有用。