日期:2014-05-17  浏览次数:20678 次

已经得到SWF文件,剥离它,却没有其中播放的图片
研究了一下,它的这个原理似乎是这样的:

  该页面用SWF文件作为播放器,播放指定的几张图片.浏览者在浏览器端无法下载这些图片,只能得到SWF文件,而且用软件剥离这个SWF,其中并无图片文件

比如这个网页:http://www.winstarlighting.com/index.html (我想得到其中的图片,却无法实现)

  请问,我可以怎么样才能得到其中的图片呢?谢谢!

或者得到整个FLASH文件也行。(源代码中的“imageshow.swf”无效,其只是个播放器)

------解决方案--------------------
楼主,这样的代码原理是这样的:

1,它先用一段JS实现6张图片滚动,另外采用了SWF播放器把框架加载在图片外面,这正是你能获得到的imageshow.swf文件!

2,你如果要得到那些照片,就在该页面的源代码里找javascript段(我大致看了一下,应该是外部引用了的,你得细致的看看),里面有图片路径和文件名,类似一下JS:

JScript code

<script language='javascript'>   
linkarr = new Array();    
picarr = new Array();    
textarr = new Array();    
var swf_width=880;    
var swf_height=330;    
//文字颜色|文字位置|文字背景颜色|文字背景透明度|按键文字颜色|按键默认颜色|按键当前颜色|自动播放时间|图片过渡效果|是否显示按钮|打开方式    
var configtg='0xffffff||0x3FA61F|5|0xffffff|0xC5DDBC|0x000033|5|3|1|_blank';    
var files = "";    
var links = "";    
var texts = "";    
//这里设置调用标记    

picarr[1]  = "/LED-Bulbs.png";
picarr[2]  = "/LED-Down-Light.png";
picarr[3]  = "/LED-Panel-Light.png";
picarr[4]  = "/LED-Spot-Light.PNG";
picarr[5]  = "/LED-Strip.png";
picarr[6]  = "/LED-T8-Tube.png";
    
for(i=1;i<picarr.length;i++){    
if(files=="") files = picarr[i];    
else files += "|"+picarr[i];    
}    
for(i=1;i<linkarr.length;i++){    
if(links=="") links = linkarr[i];    
else links += "|"+linkarr[i];    
}    
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ swf_width +'" height="'+ swf_height +'">');    
document.write('<param name="movie" value="/imageshow.swf"><param name="quality" value="high">');    
document.write('<param name="menu" value="false"><param name=wmode value="opaque">');    
document.write('<param name="FlashVars" value="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_title='+texts+'&bcastr_config='+configtg+'">');    
document.write('<embed src="/imageshow.swf" wmode="opaque" FlashVars="bcastr_file='+files+'&bcastr_link='+links+'&bcastr_config='+configtg+'&menu="false" quality="high" width="'+ swf_width +'" height="'+ swf_height +'" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />'); document.write('</object>');    
</script>

------解决方案--------------------
楼主如果只是为了要这个图片的话,密籍交你一个:

第一步:打开浏览器,工具 -> Internet选项 -> 常规 -> 删除所有的历史记录和临时文件

第二步:打开你那个网址,然后等全部图片都可以看到

第三步:工具 -> Internet选项 -> 常规 -> 浏览历史记录 -> 设置 -> 查看文件,然后把里面的所有文件全部复制出来,随便复制到其他目录下,然后,你就会发现,你要的图都在这里了。