Python下载prettyloaded的swf

简介: 以前看到prettyloaded上面的loading条都很不错,最近又有需要用到loading条,怎奈它并不提供直接打包下载,只好自己写程序去抓取了… 访问:http://www.prettyloaded.com/ ,用httwatch可以分析出它的swf配置文件是这个地址:http://www.prettyloaded.com/php/getAllLoadersAsXMLList.php   另存为xml,名字就随便了,保存路径最好不要有中文。

以前看到prettyloaded上面的loading条都很不错,最近又有需要用到loading条,怎奈它并不提供直接打包下载,只好自己写程序去抓取了…

访问:http://www.prettyloaded.com/ ,用httwatch可以分析出它的swf配置文件是这个地址:http://www.prettyloaded.com/php/getAllLoadersAsXMLList.php

image

 

另存为xml,名字就随便了,保存路径最好不要有中文。

 

因为要使用pyton来处理,首先是机器上要装有python的环境,代码编辑器就随便了(用着顺手的都行,我用的是editPlus)…

有几点是在写代码中遇到的问题,还有几点是有等解决的问题:

1、下载地址后面要带上随机数,用来请求最新的文件

2、找到下载文件的地址是如此拼接起来了

3、解析xml的处理(使用google搜索老半天,最后还是直接看官方文档解决了问题) xml.etree.ElementTree

4、对路径的处理,先判断路径是否存在,不存在先创建目录

5、代码暂时不支持多线程下载,有空再好好更新一下

 

下面是代码了,python是自己下班后随便看了一些,研究的不多,也不常用它(代码可能写的并不规范,但它能满足我自己的需求^_^)

   1: # -*- coding: utf-8 -*-
   2: """
   3: Created on Sat Dec 11 15:05:51 2010
   4:  
   5: @author: ZhangYi
   6: """
   7: from xml.etree import ElementTree
   8: import time, urllib, os
   9:  
  10:  
  11: def load_xml_file(fileName):
  12:     root = ElementTree.parse(fileName,None).getroot();
  13:     
  14:     items = root.findall("preloaders/preloader")
  15:     
  16:     #string.atoi(s,[,base]) //base为进制基数
  17:     
  18:     for temp_item in items:
  19:         swf_name = temp_item.get("swf")
  20:         now_date = str(time.time())
  21:         
  22:         swf_url = "http://www.prettyloaded.com/swf/" + swf_name + "?cachebuster=" + now_date
  23:         
  24:         print 'read request url is : ' + swf_url + ' begin down...'
  25:         
  26:         load_swf_file(swf_url, swf_name)
  27:         
  28:         break
  29:  
  30:  
  31: def load_swf_file(swfUrl, swfName):
  32:     sava_dir_path = 'd:\\test\\'
  33:     save_path = sava_dir_path + swfName
  34:     
  35:     #如果目录不存在,则先创建目录
  36:     if os.path.exists(sava_dir_path) == False:
  37:         os.mkdir(sava_dir_path)
  38:     
  39:     #如果文件存在则先删除文件 
  40:     if os.path.isfile(save_path) == True:
  41:         os.remove(save_path)
  42:     
  43:     #第一种方法
  44:     #swf_url = swfUrl
  45:     #swf_data = urllib.urlopen(swf_url).read()
  46:     #swf_file = file(save_path, 'wb')
  47:     #swf_file.write(swf_data)
  48:     #swf_file.close()
  49:     
  50:     #另一种方法
  51:     urllib.urlretrieve(swfUrl, save_path)
  52:     
  53:     print swfUrl + ' down end...'
  54:     
  55: if __name__ == "__main__":  
  56:     url = 'C:/pythonApp/swf_list.xml'
  57:     load_xml_file(url)

 

这样我在D盘就能看到下载的文件了:

image

目录
相关文章
|
1月前
|
存储 缓存 Python
如何使用Python抓取PDF文件并自动下载到本地
如何使用Python抓取PDF文件并自动下载到本地
31 0
|
2月前
|
Linux 开发工具 C语言
30天python速成-第一天(python简介及下载安装)
30天python速成-第一天(python简介及下载安装)
47 3
|
3月前
|
Web App开发 Python
Python使用selenium的Chrome下载文件报错解决
Python使用selenium的Chrome下载文件报错解决
46 0
|
3月前
|
Web App开发 Python
python+selenium+Chrome 监测文件是否下载完毕
python+selenium+Chrome 监测文件是否下载完毕
49 0
|
1月前
|
Shell Python Windows
通过Python实现win11环境下FTP的上传与下载
通过Python实现win11环境下FTP的上传与下载
|
1月前
|
数据采集 数据挖掘 开发者
手机使用Python轻松下载闲鱼短视频
手机使用Python轻松下载闲鱼短视频
26 0
手机使用Python轻松下载闲鱼短视频
|
1月前
|
Python
如何利用Python下载酷狗音乐
如何利用Python下载酷狗音乐
32 0
|
1月前
|
数据可视化 UED Python
用Python打造批量下载视频并能可视化下载进度的炫酷下载器
用Python打造批量下载视频并能可视化下载进度的炫酷下载器
32 0
|
2月前
|
数据采集 开发工具 Python
Python下载文件进度条Demo
Python下载文件进度条Demo
30 0
|
3月前
|
API Python
python+selenium设置下载路径
python+selenium设置下载路径
24 0

热门文章

最新文章