Heim  >  Artikel  >  Web-Frontend  >  已经得到SWF文件,剥离它,却没有其中播放的图片_html/css_WEB-ITnose

已经得到SWF文件,剥离它,却没有其中播放的图片_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 12:14:021057Durchsuche

研究了一下,它的这个原理似乎是这样的:

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

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

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

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


回复讨论(解决方案)

这个可能是flash从后台获取的
试试用falash反编译软件 看看里面的代码 
拿到图片对应的路径应该就可以获取图片了

楼主,这样的代码原理是这样的:

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

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

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

楼上的方法不行,其他图片可以得到,可是这个SWF文件播放的几张无法得到

哦,试了一下,真的能得到。

牛X

哦,试了一下,真的能得到。

牛X

呵呵,记得结贴就好!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn