详解使用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检查字符串是否是正确ISBN的方法
Jul 11 Python
Python实现图片滑动式验证识别方法
Nov 09 Python
Python时间戳使用和相互转换详解
Dec 11 Python
ubuntu安装sublime3并配置python3环境的方法
Mar 15 Python
python使用udp实现聊天器功能
Dec 10 Python
通过PYTHON来实现图像分割详解
Jun 26 Python
Win10下Python3.7.3安装教程图解
Jul 08 Python
opencv 获取rtsp流媒体视频的实现方法
Aug 23 Python
通过python3实现投票功能代码实例
Sep 26 Python
Python实现随机生成任意数量车牌号
Jan 21 Python
聊聊python在linux下与windows下导入模块的区别说明
Mar 03 Python
用Python仅20行代码编写一个简单的端口扫描器
Apr 08 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
ftp类(myftp.php)
2006/10/09 PHP
VFP与其他应用程序的集成
2006/10/09 PHP
PHP4引用文件语句的对比
2006/10/09 PHP
zf框架的db类select查询器join链表使用示例(zend框架)
2014/03/14 PHP
Laravel框架数据库CURD操作、连贯操作总结
2014/09/03 PHP
thinkphp制作404跳转页的简单实现方法
2016/09/22 PHP
html 锁定页面(js遮罩层弹出div效果)
2009/10/27 Javascript
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
JavaScript高级程序设计 阅读笔记(十八) js跨平台的事件
2012/08/14 Javascript
一个获取第n个元素节点的js函数
2014/09/02 Javascript
原生JavaScript生成GUID的实现示例
2014/09/05 Javascript
深入浅出理解javaScript原型链
2015/05/09 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
JS实现三个层重叠点击互相切换的方法
2015/10/06 Javascript
实例解析jQuery中如何取消后续执行内容
2016/12/01 Javascript
canvas 弹幕效果(实例分享)
2017/01/11 Javascript
JavaScript中双符号的运算详解
2017/03/12 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
200行HTML+JavaScript实现年会抽奖程序
2019/01/22 Javascript
vue项目中引入Sass实例方法
2019/08/27 Javascript
Python实现获取操作系统版本信息方法
2015/04/08 Python
python实现自动登录人人网并采集信息的方法
2015/06/28 Python
python将字符串以utf-8格式保存在txt文件中的方法
2018/10/30 Python
python redis 删除key脚本的实例
2019/02/19 Python
详解用python计算阶乘的几种方法
2019/08/14 Python
宝塔面板成功部署Django项目流程(图文)
2020/06/22 Python
浅谈Django前端后端值传递问题
2020/07/15 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
关于HTML5的安全问题开发人员需要牢记的
2012/06/21 HTML / CSS
智能室内花园:Click & Grow
2021/01/29 全球购物
《小石潭记》教学反思
2014/02/13 职场文书
政治思想表现评语
2014/05/04 职场文书
市场营销专业应届生自荐信
2014/06/19 职场文书
国际贸易实务实训报告
2014/11/05 职场文书
简爱读书笔记
2015/06/26 职场文书
zabbix自定义监控nginx状态实现过程
2021/11/01 Servers