遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
‘’’
import requests
url = ‘https://readthedocs.org/projects/python-guide/downloads/pdf/latest’
allow_redirect参数True表示允许重定向
r = requests.get(url, allow_redirect=True)
with open(‘r.txt’, ‘wb’) as f:
f.write®
f.close()
四、大文件分块下载
有些文件非常的大,如果我们直接下载,可能会因为事件原因或者网络原因造成下载失败,这时候我可以使用分块下载的形式进行下载。
requests 支持分块下载,只需要将 stream 设为True 即可
import requests
url = ‘https://readthedocs.org/projects/python-guide/downloads/pdf/latest’
stream参数True表示分块下载
r = requests.get(url, stream=True)
with open(‘r.txt’, ‘wb’) as f:
for ch in r:
f.write®
f.close()
五、并行下载
多线程、多进程并发下载,大大提高下载速度
‘’’
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
‘’’
import requests
from multiprocessing.poll import Pool
定义下载函数
def url_response(url):
path, url = url
r = requests.get(url, stream=True)
with open(path, ‘wb’) as f:
for ch in r:
f.write(ch)
f.close()
urls = [‘aaa’, ‘bbb’, ‘ccc’] # 假设有好多个下载链接
排队下载的方式
for x in urls:
url_response(x)
并行下载的方式
ThreadPool(3).imap_unordered(url_response, urls)
六、下载中加入进度条
使用进度条更直观的查看下载进度,这里使用 clint 模块实现进度条功能
pip install clint
下载
import requests
from clint.textui import progess
url = ‘xxxxxxxxxxx’
r = requests.get(url, stream=True)
with open(‘x.txt’, ‘wb’) as f
total_length = int(r.headers.get(‘content-length’))
for ch in progress.bar(r.iter_content(chunk_size=2391975, expected)size=(total_length/1024)+1)):
if ch:
f.write(ch)
f.close()
七、使用 urllib 模块下载
urllib库是Python的标准库,因此不需要安装它。
下载代码
urllib.request.urlretrieve(URL, PATH)
八、通过代理下载
因为一些众所周知的原因我们下载国外的资源会非常的慢,这时候可以使用代理的方式进行下载
requests 模块使用代理
‘’’
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
‘’’
import requests
定义代理,假设本机上有个梯子的服务,代理端口是2258
文末有福利领取哦~
👉一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
👉二、Python必备开发工具
👉三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉 四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
👉五、Python练习题
检查学习结果。
👉六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!