python3 下载文件-使用Python 3从网上下载文件
小编典典
如果要将网页的内容转换为变量,则只需read响应urllib.request.urlopen:
import urllib.request
...
url = "http://example.com/"
response = urllib.request.urlopen(url)
data = response.read() # a `bytes` object
text = data.decode("utf-8") # a `str`; this step can"t be used if data is binary
下载和保存文件的最简单方法是使用以下urllib.request.urlretrieve功能:
import urllib.request
...
# Download the file from `url` and save it locally under `file_name`:
urllib.request.urlretrieve(url, file_name)
import urllib.request
...
# Download the file from `url`, save it in a temporary directory and get the
# path to it (e.g. "/tmp/tmpb48zma.txt") in the `file_name` variable:
file_name, headers = urllib.request.urlretrieve(url)
但是请记住,这urlretrieve被认为是遗留的,并且可能会被弃用(尽管不确定为什么)。
因此,执行此操作的最正确方法是使用urllib.request.urlopen函数返回一个表示HTTP响应的类似文件的对象,然后使用将其复制到实际文件中shutil.copyfileobj。
import urllib.request
import shutil
...
# Download the file from `url` and save it locally under `file_name`:
with urllib.request.urlopen(url) as response, open(file_name, "wb") as out_file:
shutil.copyfileobj(response, out_file)
如果这看起来太复杂,则可能要简化一些并将整个下载存储在一个bytes对象中,然后将其写入文件。但这仅适用于小文件。
import urllib.request
...
# Download the file from `url` and save it locally under `file_name`:
with urllib.request.urlopen(url) as response, open(file_name, "wb") as out_file:
data = response.read() # a `bytes` object
out_file.write(data)
可以动态提取.gz(可能还有其他格式)压缩数据,但是这种操作可能需要HTTP服务器支持对文件的随机访问。
import urllib.request
import gzip
...
# Read the first 64 bytes of the file inside the .gz archive located at `url`
url = "http://example.com/something.gz"
with urllib.request.urlopen(url) as response:
with gzip.GzipFile(fileobj=response) as uncompressed:
file_header = uncompressed.read(64) # a `bytes` object
# Or do anything shown above using `uncompressed` instead of `response`.
2020-02-21
python3 下载文件-使用Python 3从网上下载文件相关推荐
- python3下载文件-使用Python 3从网上下载文件
小编典典 如果要将网页的内容转换为变量,则只需read响应urllib.request.urlopen: import urllib.request ... url = 'http://example ...
- 如何用迅雷下载python_用Python调用迅雷批量下载excel表内的链接,并同时对文件重命名(使用的是openpyxl)...
#首先把文件名放在excel表中的第一列,把对应的链接地址放在第二列 #为什么要用迅雷来下载,因为可以加速啊 #为什么你有这些链接啊,因为我用了八爪鱼爬虫啊 #为什么用八爪鱼爬虫啊,因为python学 ...
- python多线程下载ts_基于Python的ERA-5多线程下载(1)
目录 基于Python的ERA-5多线程下载分为两部分,<基于Python的ERA-5多线程下载 (1)>,直接再本地使用,即写代码的人使用:<基于Python的ERA-5多线程下载 ...
- python you-get下载视频-使用python库之you-get下载视频
电脑想要下载b站的视频,防止视频被和谐了本地还能看,但是电脑端b站却没有本地下载的视频链接,这时候就可以用you-get下载了. 1.安装python.怎么安装就不写了.可以直接安装anaconda, ...
- python在哪下载-2018版Python教程从哪儿下载
原标题:2018版Python教程从哪儿下载 1989年冬天,创始人Guido van Rossum为了打发圣诞节的无趣而创造了它.之所以选中Python(大蟒蛇)作为该编程语言的名字,是因为他是一个 ...
- 用python可以免费下载音乐吗-Python 教你轻松下载网易音乐歌曲
前两篇文章收集了歌手信息和歌词,光有歌手信息和歌词没有歌曲怎么行,那不是耍流氓吗?正好今天周末,给大家发点福利,喜欢听音乐的同学有福了,这篇文章直接把网易云音乐歌手的热门歌曲 50 首全部免费下载下来 ...
- python读取txt文件写入-python 读取、写入txt文件的示例
写入文件 使用open()函数和write()函数 但是有两种写法,分别是'a'和'w' 'a' 表示写入文件 若无该文件会直接创建一个 如果存在这个文件,会接着已有的内容的后面写入 with ope ...
- 22 Python IO、打印到屏幕、读取键盘输入、打开和关闭文件、文件定位、重命名和删除文件、Python里的目录、文件,目录相关的方法
22Python文件I/O 22.1打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你传递的表达式转换成一个字符串表达式,并将结果写到标准输出如下: ...
- python中文版下载-趣学python编程中文版 PDF 下载
相关截图: 资料简介: Python是一款解释型.面向对象.动态数据类型的高级程序设计语言.Python语法简捷而清晰,具有丰富和强大的类库,因而在各种行业中得到广泛的应用.对于初学者来讲,Pytho ...
最新文章
- 成功解决运行tensorflow时ModuleNotFoundError: No module named ‘numpy.core._multiarray_umath‘
- 基于卷积神经网络的匹配代价算法
- java核心api_Java核心API之字符流使用介绍
- 去某大厂三面总监面,因为迟到了5分钟,面试官当着我的面把简历扔垃圾桶了
- JPA 2.1实体图–第2部分:在运行时定义延迟/急切加载
- 实现超级玛丽上下左右运动
- 论文公式编号右对齐_论文不会写?最详细的论文排版技巧
- 一个模型使召回阶段又准确又多样
- 在华为服务器 RH 2288H V2上装 windows 2008
- 都说程序员秃头996,你见过游戏3D建模师爆肝007吗?
- Prolog语言及程序设计汇总
- 德勤财务机器人正式上岗,工作视频曝光,效率惊人
- C语言程序设计预备作业
- 联想微型计算机怎么恢复系统,联想一体机系统还原的方法 联想一体机如何还原系统...
- 北京喜提初雪,Edg喜夺冠军
- 多可文档管理迁移说明
- Multisim 实验 2.0.1 逻辑门电路 PPT
- 昂瑞微蓝牙芯片HS6620D调试记录
- Kibana基础:3:生成定制化的Dashboard
- 《权威指南》笔记 -- 8.3 函数的实参和形参
热门文章
- python调用数据库存储过程_python调用MySql存储过程
- excel中怎么把超链接的结果(图片)直接显示出来_把500张产品图片导入Excel里?用这个方法可超速完成,码住...
- 利用server酱推送消息和定时库:APScheduler
- Anaconda中如何查看已经安装的包
- 【干货】Python编程惯例
- 3n+1b 备忘录方法
- EC600S-CN CAT1通信模组,2G退网升级4G如何选择,QuecPython开发资源下载
- 泰克示波器截屏软件-Tektronix示波器上位机-OpenChoice安装。示波器波形发文章论文
- linux interfaces配置文件详解
- Python之Numpy常用操作