把当前web页面上的所有图片复制到特定目录,比如C:\imgs
转载请注明:作者:糯米糊糊(huyoo353),来源:http://blog.csdn.net/huyoo/
MoreQuick回复:
thank,我也不是很精通这方面,不过插件可以用vbscript写的
麻烦你贴代码到论坛上,看是否有人会
thanks!
-- Previous Private Message --
Sent by : edward
Sent : 2005-03-18 at 7:53pm
MoreQuick 你好,我自己编了一个复制Cache图片的插件,原来是用VBscript写的,我把它加入了我的右键菜单,执行的时候,能够把 当前页面在Cache缓存中的图片复制到C:\Imgs\中去.
但是做成插件形式就不能够执行了.
后来询问Waywang之后,他说一定要JS的,所以又改成JavaScript的,但是脚本出错.我想请你有时间的话,自己或 者请一个高手帮我改改.
以前也给GB写过一点简单的插件,这回的如果做出来了也是对大家的贡献~~~
------------------------
附上源文件:
-------------
<Script language="JavaScript">
//
//*******************请保留此信息****************
//* *
//* 由Edward(糯米糊糊就是我)倾情制作于2004年11月29日 *
//* 有问题请联系huyoo353@126.com *
//* 希望所有的GB爱好者使用方便!!!! *
//* *
//*******************请保留此信息****************
//
转载请注明:作者:糯米糊糊(huyoo353),来源:http://blog.csdn.net/huyoo/
var imgs = document.images;
var counter,err=0;
var cachefolder,tempimgs ; //定义JPG文件所在的IE缓存文件夹,要复制到的临时目标文件夹
//////////////////////////////////////////////////////////// //////////////////////////
//设置文件夹路径
//严重注意:这是你有必要修改的两个地方!!!
//一般这两个文件夹是IE存放临时文件的地方,如下:
var cachefolder1="D:\\Documents and Settings\\huzi\\Local Settings\\Temporary Internet Files\\"; //我的IE临时文件夹地址,请改为你自己的
var cachefolder2="D:\\Documents and Settings\\huzi\\Local Settings\\Temp\\Temporary Internet Files\\"; //我的IE临时文件夹地址,请改为你自己的
//////////////////////////////////////////////////////////// ///////
tempimgs="C:\\Imgs\\" ; //我把JPG图像复制到我自己的C:\\imgs\\,请改为你自己喜欢的
var logfile; //定义记录文件对象
var m_objFSO = new ActiveXObject("Scripting.FileSystemObject");
call CreateLogFileAndTempFolder();//创建记录文件和临时文件夹
call CopyCachePicToTempFolder();//把缓存中的图片复制到临时文件夹tempimgs
if( err!=0 )
{
logfile.writeline ( "发生错误" );
}
//设置图像对象集合
转载请注明:作者:糯米糊糊(huyoo353),来源:http://blog.csdn.net/huyoo/
function CreateLogFileAndTempFolder()
{
////////如果临时文件夹不存在,就创建它
if m_objFSO.FolderExists(tempimgs)
{
}
else
{
m_objFSO.CreateFol der(tempimgs) ;
}
//如果记录文件zcopylog.txt不存在,就创建记录文件
logfile=tempimgs & "zcopylog.txt"
if m_objFSO.FileExists(logfile) then
logfile=m_objFSO.OpenTextFile( logfile,8,0);//在文件末尾追加
else
logfile=m_objFSO.CreateTextFil e(logfile,true)
}
logfile.writeline( location );
logfile.writeline( "\n\r" );
/////////////////////////////////////////////////////////
}
转载请注明:作者:糯米糊糊(huyoo353),来源:http://blog.csdn.net/huyoo/
function CopyCachePicToTempFolder()
{
if( err!=0)
{
logfile.writeline( "发生错误" );
}
else
{
var objDir,objFolder, objFile;
objFolder = m_objFSO.GetFolder(cachefolder2);
call SearchIETemp(objFolder.Path);
objFolder = m_objFSO.GetFolder(cachefolder1);
call SearchIETemp(objFolder.Path);
logfile.writeline "已经复制了" & counter & "张图片";
logfile.writeline "复制完毕!!!!!!!" ;
}
} 转载请注明:作者:糯米糊糊(huyoo353),来源:http://blog.csdn.net/huyoo/
function SearchIETemp(var strIETempPath)
{
var objFolder; //文件夹对象
var objFile; //文件对象
var objSubdirs; //文件夹集合对象
var objLoopFolder; //文件夹对象
var finalname;
objFolder = m_objFSO.GetFolder(strIETempPath) ;
logfile.writeline( "In Sub SearchIETemp ,objFolder is :"+ objFolder.Path);
for ( objFile In objFolder.Files)
{
logfile.writeline( objFile.ShortPath );
var len=objFile.ShortPath.length;
if( objFile.ShortPath.substring(len-4, len)).toUpperCase() == ".JPG" )
{
for(var i=0;i<imgs.length;i++)
{
logfile.writeline( imgs.length );
pos=imgs.src.lastIndexOf("/");
fileName =imgs.src.substring(pos+1,imgs.src.length-pos);
finalname = fileName;
pos= fileName.indexOf(".");
fileName = fileName.substr(0,pos-1)+"[1]"+fileName.substr(fileName.length,fileName.length-pos+1);
logfile.writeline( filename );
if (filename==objFile.Name )
{
m_objFSO.CopyFile( objFile.Path, tempimgs + finalname);
counter++;
logfile.writeline( imgs.src);
}
}
}
}
var objSubdirs = objFolder.SubFolders;
for ( objLoopFolder In objSubdirs)
{
SearchIETemp(objLoopFolder.Path);
}
}
</script>
上面的还有很多VBscript的句法,我没有改过来,反正就是利用循环查找IE临时文件夹(这个还是到CSDN上问到的)中的 JPG图片来工作的.
希望熟悉Javascript的大侠,帮我改改~~~
__________________
简单的简单,困难的困难。
欢迎访问我的Blog:http://blog.csdn.net/huyoo
--------------------------------------------------------------------------------
只有人看,没有人回答,看来高手没有时间,新手没有技能啊~~~
惨淡