使用python-requests下载文件、图片

       今天上班工作中碰到让我发送api来判断是否能够通过输入的api来下载一个文件,本身作者因为大学期间就自学过python主要目的就是为了爬虫的,但是确实因为经历的项目少,而且都可以百度求助,所以其实对于到底如何写一个爬虫,如何去下载一张图片是有一点迷茫和不知所措的,所以正好借着这个机会好好的了解一下到底爬虫是如何实现下载文件和图片的。作者因为工作需要这里使用的是requests,当然其他库以后也会去细致的学习,这篇随笔的主要目的也是为了记录一个代码脚本吧,免得以后碰到了还是需要去百度白嫖别人的成果还是很不合适的。对于具体的当然之后还是会细致的去了解的

下载文件,本质上是一个发送http请求然后接受服务器响应数据的过程。

import requests

url = 'https://www.python.org/static/img/[email protected]'

res = requests.get(url)

with open('pythonimage.png', 'wb') as f: f.write(res.content)

这里代码很好理解了requests.get(url)就是通过get请求去获取url的具体信息,当然还有post请求,delete请求等等。这一看很简单,一下子就学会只要会找url就学会了。但是国内网站有很多反爬虫机制,导致你无法下载图片。这时候可以点进去看get是怎么描述的,可以看到哎呀这个get还可以传一个名字叫header的参数,这个参数有什么作用呢。打开网页点开f12》》network会发现里面哎也有个header信息的。这个header的作用就是你输入这些header信息可以把你的代码访问网页伪装成一个人去访问这些网页。这就很简单了,我代码访问不了,人总是可以访问的嘛。开个网站总归是要有人去访问的对吧。这样我们就可以把我们的代码伪装成一个人。通过这种方式就不会被拦截了,我们也就可以获取想要的信息了!!好了我就在这里记录了一个通过requests下载一个文件的小demo。接下来的爬虫路漫漫了!

你可能感兴趣的:(使用python-requests下载文件、图片)