CSDN免积分下载 你懂的。

1、输入资源地址如:http://download.csdn.net/download/gengqkun/4127808

2、输入验证码

3、点击下载,会弹出浏览器下载。

注:成功率在70-80% ,界面很丑,请将就着用。

#-*-coding:utf-8-*-

#python3.3.5

import urllib.parse,urllib.request,http.cookiejar,io,webbrowser

import tkinter as tk

from tkinter import *

from tkinter.ttk import *

from urllib.request import urlopen

from PIL import Image, ImageTk

global root

#设置cookie

cookie = http.cookiejar.CookieJar()

cookieProc = urllib.request.HTTPCookieProcessor(cookie)

opener = urllib.request.build_opener(cookieProc)

urllib.request.install_opener(opener)

#根据路径和POST内容来提交表单

def getUrlRequest(iUrl,iStrPostData):

postdata = urllib.parse.urlencode(iStrPostData)

postdata = postdata.encode(encoding='UTF8')

header = {'User-Agent':'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)'}

req= urllib.request.Request(

url = iUrl,

data = postdata,

headers = header)

data = urllib.request.urlopen(req).read()

try:

data = data.decode('utf-8')

except:

data = data.decode('gbk', 'ignore')

return data

#获取验证码图片

def getCodeImg():

urlCode='http://csdn.juming.com/code.htm'

image_bytes = urlopen(urlCode).read()

# internal data file

data_stream = io.BytesIO(image_bytes)

# open as a PIL image object

pil_image = Image.open(data_stream)

tk_image = ImageTk.PhotoImage(pil_image)

return tk_image

#构建界面

def createGui(msg=''):

global root

root = tk.Tk()

root.title("CSDN免积分下载器 v0.1")

root.resizable(False, False) #禁止修改窗口大小

root.geometry('+400+250') #屏幕位置

#-------------------------------------------

tk_image = getCodeImg()

# put the image on a typical widget

frm_top_label = tk.Label(root,compound = 'top',image=tk_image,text="验证码图片",fg="blue",bg="brown",font=('Tempus Sans ITC',20))

frm_top_label.grid(row = 0, column = 0, padx = 15, pady = 2)

#-------------------------------------------

frm_bottom = tk.LabelFrame(root)

frm_bottom.grid(row = 1, column = 0, padx = 15, pady = 2)

frm_bottom_label_0 = tk.Label(frm_bottom,text="下载地址:", font=('Tempus Sans ITC',15))

frm_bottom_label_0.grid(row = 0, column = 0, padx = 5, pady = 2,sticky = "e") #控件右对齐

frm_bottom_label_1 = tk.Label(frm_bottom,text=" 验证码:", font=('Tempus Sans ITC',15))

frm_bottom_label_1.grid(row = 1, column = 0, padx = 5, pady = 2,sticky = "e")

frm_bottom_entry_var_0 = StringVar()

frm_bottom_entry_0 = tk.Entry(frm_bottom,textvariable=frm_bottom_entry_var_0)

frm_bottom_entry_0.grid(row = 0, column = 1, padx = 15, pady = 2)

frm_bottom_entry_var_1 = StringVar()

frm_bottom_entry_1 = tk.Entry(frm_bottom,textvariable=frm_bottom_entry_var_1) #设置密码输入框,熟悉show

frm_bottom_entry_1.grid(row = 1, column = 1, padx = 15, pady = 2)

frm_bottom_btn_0 = tk.Button(frm_bottom,text="下 载",relief=RIDGE,bd=4,width=10, font=('Tempus Sans ITC',12),command=lambda:downloadSource(frm_bottom_entry_var_0,frm_bottom_entry_var_1,frm_top_label,frm_foot_label))

frm_bottom_btn_0.grid(row = 3, column = 1, padx = 15, pady = 2,sticky = "w")

frm_foot_label = tk.Label(root,text=msg ,font=('Tempus Sans ITC',10))

frm_foot_label.grid(row = 3, column = 0, padx = 15, pady = 2)

root.mainloop()

#获取下载资源地址

def getSourceUrl(code,ziyuandz):

#资源信息

strLoginInfo = {'csdn_zh': '用户名',

'csdn_mm': '密码',

're_yzm':code,

'ziyuandz':ziyuandz #'http://download.csdn.net/detail/shinian1987/8430743' #

}

#下载资源地址

urlLogin='http://csdn.juming.com/index.htm'

returnHtml = str(getUrlRequest(urlLogin,strLoginInfo))

a = returnHtml.find('电信下载地址:') + 15

b = returnHtml.find('
网通下载地址:')

durl = returnHtml[a:b]

return durl

#下载资源

def downloadSource(frm_bottom_entry_var_0,frm_bottom_entry_var_1,frm_top_label,frm_foot_label):

try:

ziyuandz = frm_bottom_entry_var_0.get()

code = frm_bottom_entry_var_1.get()

durl = getSourceUrl(code,ziyuandz)

print('资源地址:'+ durl)

reMsg = "已经打开浏览器,请下载..."

yzm = durl.find("验证码")

#yzm += durl.find("验证码验证错误")

#yzm += durl.find("验证码输入不正确")

fs = durl.find("封杀本工具特意加")

gs = durl.find("正确的格式如")

jf = durl.find("成功获取到0点积分")

xzzy = durl.find("http:")

if fs > 0:

reMsg = "该资源被封杀,请稍后再下载..."

elif code=='':

reMsg = "验证码不能为空..."

elif ziyuandz=='':

reMsg = "下载地址不能为空..."

elif gs > 0:

reMsg = "资源地址错误,请重新输入..."

elif yzm > 0:

reMsg = "验证码输入错误..."

elif jf > 0:

reMsg = "积分不足,资源无法下载..."

elif xzzy >= 0:

webbrowser.open(durl, new=0, autoraise=True)

else:

reMsg = "资源错误或没有找到下载资源..."

#print(xzzy)

frm_foot_label['text'] = reMsg

tk_image = getCodeImg()

frm_top_label.configure(image = tk_image)

frm_top_label.image= tk_image

except:

root.destroy()

createGui('程序错误,请重新下载...')

#MAIN

createGui()

演示图片

以上就是本文的全部内容了,希望大家能够喜欢。

python csdn_Python制作CSDN免积分下载器相关推荐

  1. python制作软件下载_Python制作CSDN免积分下载器

    CSDN免积分下载 你懂的. 1.输入资源地址如:http://download.csdn.net/download/gengqkun/4127808 2.输入验证码 3.点击下载,会弹出浏览器下载. ...

  2. python3制作下载器_Python制作CSDN免积分下载器

    复制代码 代码如下: #-*-coding:utf-8-*- #python3.3.5 import urllib.parse,urllib.request,http.cookiejar,io,web ...

  3. php usc2,CSDN 免积分下载原理

    马上注册,结交更多好友,享用更多功能^_^ 您需要 登录 才可以下载或查看,没有帐号?立即注册 x 最近看见很多网友都在发布csdn 免积分下载工具,以及网盘搜索神器,我在这里说明一下原理,这样大家也 ...

  4. CSDN免积分下载(ZT)

    CSDN免积分下载 2018年07月06日 10:20:20 qq_19002157 阅读数:18566 现在官方手机绑定户已经不赠送积分了,vip又很不划算. 也有其它的方法获取积分,流程会麻烦一点 ...

  5. CSDN下载 | CSDN免积分下载 | CSDN积分攻略

    有时候很急着下载资料,但又没有积分. 我发现了一个免积分下载的地方:点击打开链接 如果不着急的话,私信或留言我帮你. 转自:http://blog.csdn.net/skillart/article/ ...

  6. CSDN免积分下载攻略

    攻略篇: 个人设置里进行手机绑定CSDN账户 奖励50分 (右上角设置-账户安全-手机绑定) 完成任务送若干分积分 http://task.csdn.net/ 上传有效资源获取积分(上传非法,广告资源 ...

  7. CSDN免积分下载 jerrycoding新增导航页

    jerrycoding新增导航页 开发学习过程中,经常用到几个资源站.在线工具站,每次都要找半天.于是自己写了个导航,记录一下常用的网站.提升效率.EZ导航,让网上冲浪更EASY! 导航地址:http ...

  8. 20个HTML5/CSS3超酷应用(附免积分下载地址)

    免积分下载地址:http://download.csdn.net/detail/yangwei19680827/6956667 1.HTML5视频破碎重组特效 强大视觉冲击 HTML5视频播放器很多, ...

  9. 下载频道2013下半年超人气精华资源汇总---全都是免积分下载。

    下载频道2013下半年超人气精华资源汇总---全都是免积分下载. 十分感谢这些免积分分享精华资源的好人!! 转自:http://bbs.csdn.net/topics/390674613 Androi ...

  10. IT 认证考试--软考--(中级项目)嵌入式系统设计师2:考试大纲【含免帐号免积分下载链接】

    一.考试说明 1.考试要求: (1)掌握科学基础知识: (2)掌握嵌入式系统的硬件.软件知识: (3)掌握嵌入式系统分析的方法: (4)掌握嵌入式系统设计与开发的方法及步骤: (5)掌握嵌入式系统实施 ...

最新文章

  1. 【数据库】sqlite中的限制:数据库大小、表数、列数、行数、参数个数、连接数等
  2. C# 中 以 # 打头的 编码 是: html 编码解码地址 转换
  3. Apache配置文件的帮助查询
  4. linux gcc编译错误:statically linked applications requires at runtime the shared libraries
  5. 解决vc2008 utf8中文字符串报错 C2001常量中有换行符
  6. how is json model initialized with json data
  7. leetcode1343. 大小为 K 且平均值大于等于阈值的子数组数目(队列)
  8. LeetCode 933. 最近的请求次数(queue)
  9. 【树莓派】:配置+SSH+VNC,实现深度学习目标检测
  10. 怎样剪立体灯笼_教你怎样做新年DIY剪纸拉花灯笼
  11. java 字面值_Java基础之字面值
  12. matlab灰色关联分析,灰色关联度分析(为什么不显示图像)大佬们帮我看看
  13. Skyline软件二次开发初级——11如何在WEB页面中的三维地图上加载和保存工程文件...
  14. 集合涉及到的排序方式
  15. BZOJ 3505 【CQOI2014】 数三角形
  16. 【思考】再谈面向过程与面向对象
  17. Android入门知识全套笔记
  18. 市场营销中4P对应4C理论
  19. 【概率论】设随机变量X~N(0, 1), 则P(X>1)的值为
  20. 自动提取网页文章或者文章的免费软件

热门文章

  1. Python安装pycryptodome密码库
  2. matlab求解pde,matlab求解pde问题
  3. 适合 Go 新手学习的开源项目——在 GitHub 学编程
  4. AifbdScore智能AI曲谱乐谱播放识别SDK midi曲谱 应用开发 五线谱 六线谱 四线谱播放
  5. nc 连接文件服务器失败,nc文件服务器
  6. 建文本文档 怎么改成html,文本文档怎么改格式 怎么把文本文档改成CFG格式
  7. Java基础案例教程pdf,圆我大厂梦!
  8. Android应用开发之统计App时长
  9. Fiddler 抓包工具
  10. 未来教育计算机二级c语言程序设计题,未来教育版计算机二级C语言题库.doc