python requests 图片保存以及--踩的坑

在python 中获取网页中的图片,保存到本地。

例子:

html = requests.get('https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1490350083846&di=01e5ca0ce5499719c43f5d1e9f75d8c9&imgtype=0&src=http%3A%2F%2Fwww.th7.cn%2Fd%2Ffile%2Fp%2F2016%2F05%2F03%2F9e9ce32b8128ad84229ccc69f8c2e6c9.jpg')
with open('picture.jpg', 'wb') as file:
    file.write(html.content)
  • 1
  • 2
  • 3

对文件的读写这里不做介绍,有一点需要注意的是,对文件的打开方式要以二进制形式,“wb”

保存格式可以为jpg , jpeg , png 等等

坑一

我在window环境下保存图片,一共12张图,结果总是出来11张图。非常费解,结果搞了很久猛然惊醒是不是文件名的大小写问题?!毕竟windows对大小写不敏感。试之,果然 。唉….

坑二

with open('picture.txt', 'wb') as file:
    file.write('123')
  • 1
  • 2

每次你都会看到你修改后,windows文件夹中文件的日期会变成你刚刚修改的日期。

但是

with open('picture.png', 'wb') as file:
    file.write(html.content)
  • 1
  • 2

这里对png的修改可能不会导致日期的更新。导致我一度怀疑修改失败。 
在换了一个图片获取地址后,获取不同的图片。可是修改日期还是没变,不知道这算不算一个bug呢?

linux下测试发现文件时间会改变

阅读更多
个人分类: Python爬虫
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭