专栏首页折腾折腾再折腾python第二大神器requests

python第二大神器requests

昨天了解了urllib模块的使用,总体来看实现的方式还是很复杂的,你肯定会想,有没有简单的方法呢?答案是肯定的,下面我们来了解一下requests库的强大之处。

首先你要安装requests库

安装代码:pip3 install requests

如果你没有安装pip3 请自行百度安装,本公众号已和百度达成合作不会的都可以去百度哦,不收费。

进入正题,我们来看一下requests的强大之处吧

1,get请求

是不是简单粗暴?相比上一篇舒服多了。

有什么属性?我也不知道哎,dir()一下?

简单介绍几个属性:

  • status_code:状态码
  • url:url
  • text:内容
  • cookies:就是cookies

我们试着用get请求添加一些参数,用params参数就好

返回的结果:

添加headers:

以知乎为例:知乎不加头信息会500报错。

返回结果:

2,post请求以及添加参数

返回结果:

3,尝试用cookies登录知乎

其实urllib中也有有对cookies的操作,不过很麻烦,相比起来requests简单许多

登录知乎时打开开发者模式,

如图:

复制下cookie值,在headers中添加cookie值:

你会发现你已经可以看到登录后的结果了!

此时要思考一个问题,每次爬取页面不会只有一个请求,那么每次请求都要添加cookies是很麻烦的,因此就有了会话维持,就会用到requests.Session()来设置,本节先不讲,后面会提到。

4,本节我们来简单的利用所学实现下载图片,音乐。

下载图片:

首先找到一个图片网站:我选择的是千图网找到一张图片,右键复制链接地址

,然后写上这样一段代码:

open() 可以对文本,图片等进行操作

open()的第一个参数是你图片存放的位置和名称,第二个参数为可进行的操作,比如w是写入,r是读取,wb是对二进制文件的操作,我们的图片,音乐都是二进制文件,运行之后你会发现,在此文件夹下已经有一张图片了,这里就不截图了,值得注意的是此时如果你要打印text会是一段乱码,因为是图片,而content会是以b开头,说明是bytes类型,是一串二进制数据。

下载音乐:

我选择的是网易云音乐,(这里要找到音乐的地址,稍微会麻烦一些)打开网易云,搜索你想要下载的音乐,然后打开开发者模式点击一下播放。

如图:

找到这首歌的url,即文件的源地址,这个地址应该是临时地址,有时间限制的。复制这个地址在新的页面打开应该是这样:

然后把请求的地址修改成你复制的地址,把存放的地址结尾改为mp3结尾即可。

因为使用方法其实都大同小异,就没有细说,根据前面的内容,应该是可以掌握的。不懂方法,不知道什么属性help一下,常见的都写在这里,后期如果写爬虫,涉及到没说过还会继续说,毕竟在项目中才会学的更多。

完。

本文分享自微信公众号 - python入门到放弃(python_xuexi),作者:初新

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-06-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 初识爬虫一(请求与响应)

    打开Chrome浏览器,按下F12打开开发者模式换到Netword下,在url栏输入www.baidu.com,会看到Netword下有很多的响应,首先我们要明...

    不断折腾
  • Python面试简历分享。

    分享前一段我的python面试简历,自我介绍这些根据你自己的来写就行,这里着重分享下我的项目经验、公司职责情况(时间倒序),不一定对每个人适用,但是有适合你的点...

    不断折腾
  • 三大解析库的使用

    etree.parse()第一个参数为html的路径,第二(etree.HTMLParser())和上面etree.HTML()的性质是一样的,为了方便,接下里...

    不断折腾
  • 外行学 Python 爬虫 第十篇 爬虫框架Scrapy

    前面几个章节利用 python 的基础库实现网络数据的获取、解构以及存储,同时也完成了简单的数据读取操作。在这个过程中使用了其他人完成的功能库来加快我们的爬虫实...

    keinYe
  • 不为人知的python request小技巧

    ? 作者:Op小剑 来源: http://blog.csdn.net/xie_0723/article/details/52790786 关于 Python ...

    小小科
  • Vue-cli中axios传参的方式以及后端取的方式

    如果是params传参后台取request.GET或者request.query_params

    小小咸鱼YwY
  • InetAddress 解析

    java404
  • python爬虫架构之scrapy重现江湖

    scrapy是一个python爬虫架构,非常适合做一些大型爬虫项目,并且开发者利用这个架构,可以用不关注一些细节问题,现在爬虫的架构还是很多的,作为元老级别的s...

    数据森麟
  • 每天一道面试题 | day07

    GET请求获取Request-URI所标识的资源,例如:在浏览器的地址栏中输入网址的方式访问网页时,浏览器采用GET方法向服务器获取资源。

    剑走天涯
  • 红烧嗨鸟

    用户1907613

扫码关注云+社区

领取腾讯云代金券