迅雷和qq旋风下载,有加速和离线功能,非常方面,我是在网上看到的原始地址和迅雷地址,qq旋风地址的转化原理。然后用python+pyqt写了一个client

原理:

迅雷: 迅雷下载地址="thunder://"+Base64编码("AA"+"真实地址"+"ZZ")

QQ旋风: qqdl="qqdl://"+Base64编码("真实地址")

import re
import base64
from PyQt4 import QtGui,QtCore
import os
import sys class Window(QtGui.QWidget):
def __init__(self):
QtGui.QWidget.__init__(self) self.linklabel=QtGui.QLabel('link:',self)
self.link=QtGui.QLineEdit(self) self.thunderlabel=QtGui.QLabel('Thunder:',self)
self.thunder=QtGui.QLineEdit(self) self.qqdllabel=QtGui.QLabel('qqdl',self)
self.qqdl=QtGui.QLineEdit(self) transbutton=QtGui.QPushButton('Transition',self) grid=QtGui.QGridLayout()
grid.addWidget(self.linklabel)
grid.addWidget(self.link)
grid.addWidget(self.thunderlabel)
grid.addWidget(self.thunder)
grid.addWidget(self.qqdllabel)
grid.addWidget(self.qqdl)
grid.addWidget(transbutton) self.resize(500,200)
self.setLayout(grid)
self.setWindowTitle('Transition by loster v0.1') self.connect(transbutton,QtCore.SIGNAL('clicked()'),Trans) def getUrl(self):
return self.link.text()
def setThunder(self,url):
self.thunder.setText(url)
def setQQDL(self,url):
self.qqdl.setText(url)
def setError(self,warning):
QtGui.QMessageBox.warning( self, "Transition", warning, QtGui.QMessageBox.Yes ) def Trans():
#获得链接
url=main.getUrl()
print 'url:'+url
if CheckUrl(url):
main.setThunder(Url2Thunder(url))
main.setQQDL(Url2QQdl(url))
else:
main.setError('Invalid link,Please try again') #推断url是否有效
def CheckUrl(url):
if re.match('(http|https|ftp|ed2k)://', url):
return True
else:
return False #转化成迅雷下载地址
def Url2Thunder(url):
url='AA'+url+'ZZ'
url = base64.b64encode(url)
url = 'thunder://' + url
print 'thunder:'+url
return url #转换成qq旋风下载地址
def Url2QQdl(url):
url = base64.b64encode(url)
url = 'qqdl://' + url
print 'QQDL:'+url
return url if __name__=='__main__':
app=QtGui.QApplication(sys.argv)
main=Window()
main.show()
sys.exit(app.exec_())

源代码下载:https://github.com/iloster/UrlTransition

版权声明:本文博主原创文章,博客,未经同意不得转载。

python下载地址到迅雷qq旋风下载的更多相关文章

  1. Android Studio 下载地址【包括国内本地下载】

    Android Studio 下载地址,目前最新可下载地址,尽量使用下载工具. Android Studio正式发布,给Android开发者带来了不小的惊喜.但是下载地址却不给力,国内似乎无法正常下载 ...

  2. sql server 2008 r2 直接下载地址,可用迅雷下载

    sqlserver 2008 r2 直接下载地址,可用迅雷下载 下载sqlserver 2008 r2 ,微软用了一个下载器,经过从下载器上,将他的地址全部用键盘敲了下来.最终的简体中文版地址如下: ...

  3. 统计学基于SPSS贾俊平 授课笔记 发布作业 spss19cn 软件下载地址及破解包spss19_10039 下载地址

    spss19cn软件下载地址及破解包spss19_10039 软件包下载地址一 http://www.33lc.com/soft/41991.html 软件包下载地址二 http://dl.pconl ...

  4. Oracle 10g 和11g r2 下载地址(使用迅雷)

    http://www.blogjava.net/wangdetian168/archive/2011/03/01/345428.html  10g http://www.blogjava.net/wa ...

  5. php中将地址生成迅雷快车旋风链接的代码

    function zhuanhuan() { $urlodd=explode('//',$_GET["url"],2);//把链接分成2段,//前面是第一段,后面的是第二段 $he ...

  6. Sql Server 2005 开发版亲測可用下载地址

    sqlserver2005开发版下载地址:http://222.132.81.146/rj/cs_sql_2005_dev_all_dvd.rar建议使用迅雷下载. sql server 2005 开 ...

  7. 【Android 应用开发】Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载

    19af543b068bdb7f27787c2bc69aba7f Additional Download (32-, 64-bit) Package r10 STL debug info androi ...

  8. ORACLE各版本下载地址

    ORACLE 10g下载|ORACLE 10g下载地址|ORACLE 10g官网下载地址 ORACLE 10g下载地址 oracle 下载还需要用户名我自己注册了个方便大家使用下载 user:1603 ...

  9. iPad iOS8.0升级和Xcode 6.0.1公布了,附Xcode 6.0.1下载地址

    今天上午把iPad mini升级到了iOS 8.0,升级提示须要6.7G空间,无奈仅仅好把一些大的App删掉腾冲空间,然后開始升级,3小时后最终升级成功了. 下午试着把我们的App通过xcode 5 ...

随机推荐

  1. 玩转web之JQuery(二)---改变表单和input的可编辑状态(封装的js)

    var FormDeal = { /** * 功能 :将表单的所有input都设为可编辑的 *@param 要操作表单的id */ formWritable: function (formId) { ...

  2. JS window.open()财产

    一. Window 对象 Window 对象是 JavaScript 顶级对象层次. Window 对象表示一个浏览器窗口或帧. Window 在对象 <body> 或 <frame ...

  3. 重新想象 Windows 8 Store Apps (31) - 加密解密: 哈希算法, 对称算法

    原文:重新想象 Windows 8 Store Apps (31) - 加密解密: 哈希算法, 对称算法 [源码下载] 重新想象 Windows 8 Store Apps (31) - 加密解密: 哈 ...

  4. oracle表空间查询维护命令大全之三(暂时表空间)史上最全

    --UNDO表空间汇总 --查看全部的表空间名字 SELECT NAME FROM V$TABLESPACE; --创建新的UNDO表空间,并设置自己主动扩展參数; CREATE UNDO TABLE ...

  5. bootstarp modal自己主动调整宽度的JS代码

    $('#ajaxPage').modal('show').css({ width: 'auto', 'margin-left': function () { return -($(this).widt ...

  6. 使用 Cordova+Visual Studio 创建跨平台移动应用(1)

    1简介 本章节是关于Visual Studio Tools for Apache Cordova的,目前此产品只发布了预览版.Visual Studio for Apache Cordova帮助熟悉V ...

  7. java多线程Future和Callable类的解释与使用

    一,描写叙述 ​在多线程下编程的时候.大家可能会遇到一种需求,就是我想在我开启的线程都结束时,同一时候获取每一个线程中返回的数据然后再做统一处理,在这种需求下,Future与Callable的组合就派 ...

  8. oracle 12c 三学习 pdb 可插拔测试

    DECLARE l_result BOOLEAN; BEGIN l_result := DBMS_PDB.check_plug_compatibility( pdb_descr_file => ...

  9. Linux Kernel(Android) 加密算法汇总(三)-应用程序调用内核加密算法接口

    于Linux Kernel(Android) 加密算法总结(cipher.compress.digest)文章中.介绍了怎样在内核中增加三种不同类型的内核加密算法, 并给出了在内核模块中怎样调用他们的 ...

  10. 介绍一款轻量级js控件:easy.js

    easy.js 组件高速入门 在使用 easy.js 的组件之前,假设能花上几分钟看看以下的一些简单的入门指南,在使用组件的时候你会更加的得心应手. 简单性 easy.js 的组件在 UI(界面) 层 ...