Python轻松入门-38 从网站上下载图片

视频教程下载链接:http://pan.baidu.com/s/1nv37dbV

配套教程下载:http://pan.baidu.com/s/1qYdI6q4

这节课将会非常有趣,因为我们要编写一个小程序实来现从网上下载图片,首先我们包含random模块,我们将使用这个模块的随机生成数字的功能,来为下载的图片命名,然后,还要包含urllib.request这个模块进来,它能够帮我们从网上下载一些各种数据包:

 
 
import  random import urllib.request
这里顺便告诉大家一个经验,如果你想要实现一个功能,你想避免重复编写代码,但是不知道有没有合适的模块可以包含,这时候,你可以打开File->Settings: 图 7‑1 然后,切换到在左边的Project Interpreter选项卡: 图 7‑2 这个功能可以让你从互联网上下载你需要的模块,假如,现在我想加入一个线性代数的模块,首先点击右边的+号,它会弹出一个搜索对话框: 图 7‑3 这里因为我要搜索线性代数相关的模块,我们知道线性的英文是:linear,所以搜索: 图 7‑4 你看,它会弹出很多模块供我们下载,比如说,这里我们下载linear_Counter,右边是关于这个模块的解释。点击左下角的Install Package即可完成安装: 图 7‑5 安装成功后,关闭对话框即可,然后linearCounter就显示在已下载列表汇总了。当你觉得有些模块不需要,可以点击右边的‘-’号进行卸载: 图 7‑6 这是一个小小的经验供大家参考。 那么现在,回到我们的课程中,这里我们定义一个下载函数,唯一的参数就是网址:
def download_web_image(url):
接着,我们像上节课那样,产生一个1到1000的随机的数字,
    name = random.randrange(1, 1000)
所以呢,我们下载好的图片的名称可能是288.jpg,或者999.jpg,这可能不是最好的方式,但供咱们讲解课程足够了。接着,我们要为文件的名称加上一个后缀名,所以定义一个full_name变量,将它加上.jpg即可。
    full_name = str(name) + '.jpg'
有了这个完整的名称之后呢,还需要做一件事,就是:下载图片,这时候,就需要从urllib这个模块中调用一个函数:urlretrieve,它有两个参数,第一个参数是图片所在互联网上的链接,就是前面有http的那个东西。这里我们就把这个函数的参数传递进去,第二个参数是图片的名称,就是我们刚刚定义好的full_name:
    urllib.request.urlretrieve(url, full_name)
现在我们就来调用这个函数下载我们自己官网的图片,比如说,这里打开www.oxox.work,找到一篇有图片的文章,然后把它的网址拷贝下来,接着,调用download_web_image这个函数,将网址作为参数传递进去,这里需要的是一个字符串,所以需要加上引号:
download_web_image('http://www.oxox.work/web/wp-content/uploads/2016/07/chrome-privacy.png')
注意从网上下载的这个图片,将会被默认下载到与当前Python文件同一个目录下。运行: 图 7‑7 你看,成功下载,这就是利用已有的模块完成从网上下载图片的功能,掌握了这个功能,就相当于掌握了网络爬虫的基础。 更多精彩内容尽在视频中!   本文固定链接:http://www.oxox.work/web/python/crawer/ | 虚幻大学

查看原文:http://www.oxox.work/web/python/crawer/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虚坏叔叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值