我的一位朋友上傳了大約20個左右的大自然照片畫廊,她在過去一年左右的時間裏完成了webshots.com,但是,我剛剛爲她購買了一個付費的Flickr帳戶,一個生日禮物,我想從網頁截圖中下載她的所有照片,並準備好讓她上傳到Flickr,一旦她收到有關她的賬戶升級的電子郵件(她不在國外 - 沒有互聯網接入)。重寫Greasemonkey和FireFox中的URL部分
我無法訪問她的網頁截圖帳戶,因此我使用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");
}
我不知道你要在這裏完成的任務,但似乎做手工實際上可能比快編寫代碼爲你做。 – 2010-07-12 23:18:49
當您從其中一個答案複製代碼並將其編輯到您的問題中時,您應該記錄下來。否則會令人困惑。在這種情況下,您在複製答案時複製了錯字。正如@Brock Adams指出的那樣,你可以修正錯字,它應該適合你。 – Robusto 2010-07-13 01:08:09