详解使用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创建xml文件示例
Mar 22 Python
Python实现的多项式拟合功能示例【基于matplotlib】
May 15 Python
Python脚本修改阿里云的访问控制列表的方法
Mar 08 Python
详解python selenium 爬取网易云音乐歌单名
Mar 28 Python
实例详解Python装饰器与闭包
Jul 29 Python
如何利用python给图片添加半透明水印
Sep 06 Python
基于Python中isfile函数和isdir函数使用详解
Nov 29 Python
python 实现将小图片放到另一个较大的白色或黑色背景图片中
Dec 12 Python
Python OpenCV读取中文路径图像的方法
Jul 02 Python
Python selenium如何打包静态网页并下载
Aug 12 Python
python爬虫分布式获取数据的实例方法
Nov 26 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
Feb 05 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
php查看session内容的函数
2008/08/27 PHP
解析PHP 5.5 新特性
2013/07/02 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
2015/05/12 PHP
php获取客户端IP及URL的方法示例
2017/02/03 PHP
通过jQuery打造支持汉字,拼音,英文快速定位查询的超级select插件
2010/06/18 Javascript
jquery中动态效果小结
2010/12/16 Javascript
jQuery实现用户注册的表单验证示例
2013/08/28 Javascript
jQuery focus和blur事件的应用详解
2014/01/26 Javascript
jquery动态改变form属性提交表单
2014/06/03 Javascript
jquery实现textarea 高度自适应
2015/03/11 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
JavaScript获取各大浏览器信息图示
2015/11/20 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
Three.js学习之网格
2016/08/10 Javascript
基于jQuery实现顶部导航栏功能
2016/12/27 Javascript
浅谈struts1 & jquery form 文件异步上传
2017/05/25 jQuery
JavaScript实现三级联动菜单效果
2017/08/16 Javascript
在小程序中使用腾讯视频插件播放教程视频的方法
2018/07/10 Javascript
webpack4 升级迁移的实现
2018/09/12 Javascript
vuex state中的数组变化监听实例
2019/11/06 Javascript
nodejs制作小爬虫功能示例
2020/02/24 NodeJs
[02:17]TI4西雅图DOTA2前线报道 啸天mik夫妻档解说
2014/07/08 DOTA
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
Python批量更改文件名的实现方法
2017/10/29 Python
Python提取PDF内容的方法(文本、图像、线条等)
2019/09/25 Python
Pycharm中安装wordcloud等库失败问题及终端通过pip安装的Python库如何添加到Pycharm解释器中(推荐)
2020/05/10 Python
如何理解python对象
2020/06/21 Python
分布式数据库需要考虑哪些问题
2013/12/08 面试题
抗震救灾标语
2014/06/26 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
逃课打麻将检讨书
2014/10/05 职场文书
公诉意见书范文
2015/06/05 职场文书
演讲比赛主持词
2015/06/29 职场文书
2016公司年会主持词
2015/07/01 职场文书
vue3不同环境下实现配置代理
2022/05/25 Vue.js