Python实现115网盘自动下载的方法


Posted in Python onSeptember 30, 2014

本文实例讲述了Python实现115网盘自动下载的方法。分享给大家供大家参考。具体实现方法如下:

实例中的1.txt,是网页http://bbs.pediy.com/showthread.php?t=144788另存为1.txt

通过每3秒钟复制一个下载链接到粘贴板,复制时会自动调用115客户端下载,每下载10个文件会手工输入一个字符,防止一下下载太多,卡死机器

具体代码如下:

import re, os, time
import webbrowser
import urllib
  
if __name__ == "__main__":
  fp = open("c:\\1.txt")
  
  https = re.compile(r"(http://u.*)")
  urlList = []
  for url in https.findall(fp.read()):
    urlList.append(url)
  
  downloadUrlList = []
  IsFirst = 1
  print urlList
  for url in urlList:
    doc = urllib.urlopen(url).read()
    reDownloadUrl = re.compile(r'(http://115.com/file/.*)"')
    for downloadUrl in reDownloadUrl.findall(doc):
      if IsFirst:
        downloadUrlList.append(downloadUrl)
        IsFirst = 0
    IsFirst = 1
    #print "-"*20
  
  for url in downloadUrlList:
    print url
    
  import win32clipboard
  import win32con
  def copyToClipboard(copyText):
    win32clipboard.OpenClipboard()
    win32clipboard.EmptyClipboard()
    win32clipboard.SetClipboardData(win32con.CF_TEXT, copyText)
    win32clipboard.CloseClipboard()
    
  #downloadUrlList = ["http://115.com/file/cmlirmfo","http://115.com/file/ew7htcjc","http://115.com/file/cm25l95e","http://115.com/file/atn8dsgj","http://115.com/file/b3e0ae5k","http://115.com/file/cm27rs3g","http://115.com/file/cmkwjpa1","http://115.com/file/ew4sx25c","http://115.com/file/d2b1alj8","http://115.com/file/b3c29o48","http://115.com/file/ew8ctkyc","http://115.com/file/b3m4ea70","http://115.com/file/atcph3md","http://115.com/file/ew9fw53a","http://115.com/file/cm512ct1","http://115.com/file/ewx7d35c","http://115.com/file/at8nd5xj","http://115.com/file/ewcs6jbj","http://115.com/file/b3104ve1","http://115.com/file/b3b1koke","http://115.com/file/d2st6pv6","http://115.com/file/atb20b6h","http://115.com/file/b353salz","http://115.com/file/atzilrkp","http://115.com/file/cmg35and","http://115.com/file/cmq5ceje","http://115.com/file/atkdb5oc","http://115.com/file/d297u2v6","http://115.com/file/ataqteic","http://115.com/file/cm7ralmz","http://115.com/file/cm70v4nr","http://115.com/file/cmfhr2so","http://115.com/file/atvtkaja","http://115.com/file/b3t7b6aw","http://115.com/file/atoyp4iz","http://115.com/file/ewpk79kj","http://115.com/file/at5k044x","http://115.com/file/d2mo0678","http://115.com/file/a9hegswp","http://115.com/file/bl472ir1","http://115.com/file/dl2dgqi9","http://115.com/file/dl20ky2a","http://115.com/file/bll2yssk","http://115.com/file/a9jzzlca","http://115.com/file/c4z1ek4d","http://115.com/file/blpk4pv1","http://115.com/file/c4rjotdz","http://115.com/file/a9g43daa","http://115.com/file/efnn38jr","http://115.com/file/c4leomjd","http://115.com/file/dlpw9s6i","http://115.com/file/a9n0jv8x","http://115.com/file/c48savoo","http://115.com/file/ef8og8la","http://115.com/file/a9cjk9lx","http://115.com/file/blo38e31","http://115.com/file/a987cika","http://115.com/file/c4vic87g","http://115.com/file/bl5l0syx","http://115.com/file/c4gdl7ne","http://115.com/file/efym0xhy","http://115.com/file/dl88b43f","http://115.com/file/bw4wfxa1","http://115.com/file/eswz3bgj","http://115.com/file/czw0b3g2","http://115.com/file/dis9mjcx","http://115.com/file/ajzrgiyz","http://115.com/file/es5o43lz","http://115.com/file/dnasw0kp","http://115.com/file/dnagnndx","http://115.com/file/clwr2xxg","http://115.com/file/bhbcnnwe","http://115.com/file/aq2rp9ga","http://115.com/file/e601turs","http://115.com/file/dn46qs7x","http://115.com/file/clwonrwg","http://115.com/file/dn43i7jf","http://115.com/file/bhbgrnfz","http://115.com/file/dnsl0kxp"]
  i = 0
  while i<100:
    if len(downloadUrlList) == 0:
      break
    copyToClipboard(downloadUrlList.pop())
    time.sleep(3)
    i = i + 1
    if i % 10 == 0:
      os.system("pause")
  
  print "after pause"

希望本文所述对大家的Python程序设计有所帮助.

Python 相关文章推荐
python的id()函数介绍
Feb 10 Python
Python socket C/S结构的聊天室应用实现
Nov 30 Python
Python实现删除文件但保留指定文件
Jun 21 Python
python3.6 实现AES加密的示例(pyCryptodome)
Jan 10 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
May 30 Python
使用python验证代理ip是否可用的实现方法
Jul 25 Python
python scatter散点图用循环分类法加图例
Mar 19 Python
Python代码实现删除一个list里面重复元素的方法
Apr 02 Python
python如何获取列表中每个元素的下标位置
Jul 01 Python
Django中信号signals的简单使用方法
Jul 04 Python
django 实现手动存储文件到model的FileField
Mar 30 Python
如何使用python自带IDLE的几种方法
Oct 10 Python
python打开网页和暂停实例
Sep 30 #Python
Python解析网页源代码中的115网盘链接实例
Sep 30 #Python
python网络编程之读取网站根目录实例
Sep 30 #Python
python中sets模块的用法实例
Sep 30 #Python
python根据路径导入模块的方法
Sep 30 #Python
python基于xml parse实现解析cdatasection数据
Sep 30 #Python
python中ConfigParse模块的用法
Sep 29 #Python
You might like
PHP对象克隆clone用法示例
2016/09/28 PHP
Yii CFileCache 获取不到值的原因分析
2017/02/08 PHP
PHP两种实现无级递归分类的方法
2017/03/02 PHP
php语言注释,单行注释和多行注释
2018/01/21 PHP
php实现简易计算器
2020/08/28 PHP
PHP7 弃用功能
2021/03/09 PHP
cnblogs 代码高亮显示后的代码复制问题解决实现代码
2011/12/14 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
轻松创建nodejs服务器(7):阻塞操作的实现
2014/12/18 NodeJs
JavaScript前补零操作实例
2015/03/11 Javascript
iframe里使用JavaScript控制主页转向的方法
2015/04/03 Javascript
js事件监听器用法实例详解
2015/06/01 Javascript
详解JavaScript中的forEach()方法的使用
2015/06/08 Javascript
jQuery选择器用法实例详解
2015/12/17 Javascript
javascript实现右侧弹出“分享到”窗口效果
2016/02/01 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
2016/06/02 Javascript
微信小程序 图片加载(本地,网路)实例详解
2017/03/10 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
js+html5实现侧滑页面效果
2017/07/15 Javascript
JavaScript中Require调用js的实例分享
2017/10/27 Javascript
Angular5.1新功能分享
2017/12/21 Javascript
详解vue-cli3多环境打包配置
2019/03/28 Javascript
JavaScript计算正方形面积
2019/11/26 Javascript
vue组件入门知识全梳理
2020/09/21 Javascript
vue+element实现动态加载表单
2020/12/13 Vue.js
[01:50]WODOTA制作 DOTA2中文宣传片《HERO》
2013/04/28 DOTA
初学python数组的处理代码
2011/01/04 Python
Python使用ctypes调用C/C++的方法
2019/01/29 Python
python基础梳理(一)(推荐)
2019/04/06 Python
英语系本科生求职信范文
2013/12/18 职场文书
2014年高考决心书
2014/03/11 职场文书
保险公司岗前培训工作总结
2015/10/24 职场文书
陶瓷类经典广告语集锦
2019/10/25 职场文书
Python 数据科学 Matplotlib图库详解
2021/07/07 Python
嵌入式Redis服务器在Spring Boot测试中的使用教程
2021/07/21 Redis
WebWorker 封装 JavaScript 沙箱详情
2021/11/02 Javascript