详解使用Python下载文件的几种方法


Posted in Python onOctober 13, 2019

在使用Python进行数据抓取的时候,有时候需要保持文件或图片等,在Python中可以有多种方式实现。今天就一起来学习下。

urllib.request

主要使用的是urlretrieve方法,该方法处理待淘汰的方法,不建议使用。

import urllib.request
 
url = 'https://www.baidu.com/img/superlogo_c4d7df0a003d3db9b65e9ef0fe6da1ec.png'
urllib.request.urlretrieve(url, './image/logo.png')

requests

相比上述方案,可以返回HTTP的meta信息。

import requests
 
r = requests.get(url)
with open('./image/logo.png', 'wb') as f:
  f.write(r.content)
 
# Retrieve HTTP meta-data
print(r.status_code)
print(r.headers['content-type'])
print(r.encoding)

wget

wget是Linux下的一个命令行下载工具,在Python中可以直接通过安装包后使用。使用方法如下:

import wget
 
url = 'https://www.baidu.com/img/superlogo_c4d7df0a003d3db9b65e9ef0fe6da1ec.png'
wget.download(url, './image/logo.png')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python装饰器使用方法实例
Nov 21 Python
理解Python中函数的参数
Apr 27 Python
Python中处理字符串的相关的len()方法的使用简介
May 19 Python
pandas按若干个列的组合条件筛选数据的方法
Apr 11 Python
Python实现绘制双柱状图并显示数值功能示例
Jun 23 Python
python+jinja2实现接口数据批量生成工具
Aug 28 Python
python orm 框架中sqlalchemy用法实例详解
Feb 02 Python
Python中使用socks5设置全局代理的方法示例
Apr 15 Python
Pytorch高阶OP操作where,gather原理
Apr 30 Python
python 多线程中join()的作用
Oct 29 Python
pytorch 6 batch_train 批训练操作
May 28 Python
Python快速实现一键抠图功能的全过程
Jun 29 Python
Python中输入和输出(打印)数据实例方法
Oct 13 #Python
分享8点超级有用的Python编程建议(推荐)
Oct 13 #Python
ipad上运行python的方法步骤
Oct 12 #Python
python字典排序的方法
Oct 12 #Python
python查看数据类型的方法
Oct 12 #Python
python能做什么 python的含义
Oct 12 #Python
学python安装的软件总结
Oct 12 #Python
You might like
Codeigniter实现处理用户登录验证后的URL跳转
2014/06/12 PHP
php简单实现无限分类树形列表的方法
2015/03/27 PHP
Symfony控制层深入详解
2016/03/17 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
2016/09/02 PHP
JavaScript 设计模式学习 Factory
2009/07/29 Javascript
ExtJS TabPanel beforeremove beforeclose使用说明
2010/03/31 Javascript
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
css结合js制作下拉菜单示例代码
2014/02/27 Javascript
用javascript关闭本窗口不弹出询问框的方法
2014/09/12 Javascript
js实现将选中值累加到文本框的方法
2015/08/12 Javascript
jquery制作属于自己的select自定义样式
2015/11/23 Javascript
javascript实现仿百度图片的瀑布流加载效果
2016/04/20 Javascript
浅析javascript异步执行函数导致的变量变化问题解决思路
2016/05/13 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
2016/11/04 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(2)
2017/02/20 Javascript
详解如何将angular-ui的图片轮播组件封装成一个指令
2017/05/09 Javascript
VUE axios上传图片到七牛的实例代码
2017/07/28 Javascript
AngularJS 监听变量变化的实现方法
2018/10/09 Javascript
Vue组件通信的几种实现方法
2019/04/25 Javascript
解决Nuxt使用axios跨域问题
2020/07/06 Javascript
[01:24:16]2018DOTA2亚洲邀请赛 4.6 全明星赛
2018/04/10 DOTA
Python字符遍历的艺术
2008/09/06 Python
使用python获取CPU和内存信息的思路与实现(linux系统)
2014/01/03 Python
python机器学习案例教程——K最近邻算法的实现
2017/12/28 Python
python编程嵌套函数实例代码
2018/02/11 Python
Python中的枚举类型示例介绍
2019/01/09 Python
IE9对HTML5中部分属性不支持的原因分析
2014/10/15 HTML / CSS
超30万乐谱下载:Musicnotes.com
2016/09/24 全球购物
智能家居、吸尘器、滑板车、电动自行车网上购物:Geekmaxi
2021/01/18 全球购物
NHL官方在线商店:Shop.NHL.com
2020/05/01 全球购物
广告学专业自荐信范文
2014/02/24 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
离职感谢信怎么写
2015/01/22 职场文书
关于JavaScript回调函数的深入理解
2021/06/27 Javascript