前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浅析python爬虫(下)

浅析python爬虫(下)

作者头像
吉师散养基地
发布2022-11-21 15:29:33
6360
发布2022-11-21 15:29:33
举报
文章被收录于专栏:我奏是太阳

活动地址:CSDN21天学习挑战赛

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需写作干货注入能量… 热爱写作,愿意让自己成为更好的人…

今天学习的是requests这个http模块,Python 内置了 requests 模块,该模块主要用来发 送 HTTP 请求,requests 模块比urlib模块更简洁。

安装模块

首先进入终端,输入 pip install requests ,进行模块的安装,如果显示错误信息,在排除输入错误的情况下,进行安装pip,按常理来讲,目前python较新的大部分版本都是自带pip,但也不排除某些牛马情况(悲)

 模块常见属性及用法

代码语言:javascript
复制
发送get请求,参数:url,headers,params,proxies,timeout,verify等,返回一个response对象。 requests.get() #发送post请求,参数:url,headers,data,proxies,timeout,verify等,返回一个response对象。 
requests.post() #将字典对象转换成cookiejar对象 requests.utils.cookiejar_from_dict({'name': 'value'}) #将cookiejar对象转成字典对象 requests.dict_from_cookiejar(response.cookies) #返回response对象响应体的文本内容。 response.text #返回response对象响应体的二进制数据。 response.content #设置response对象响应体的编码格式,作用于requests.text response.encoding='utf8' #将返回的json数据直接转成dict response.json() #返回响应对象中的所有cookie对象 response.cookies #返回一个requests对象,使用该对象可以对请求进行状态保持。 req = requests.session() 

requests.get(‘https://github.com/timeline.json’)       # GET请求 requests.post(“http://httpbin.org/post”)           # POST请求 requests.put(“http://httpbin.org/put”)            # PUT请求 requests.delete(“http://httpbin.org/delete”)         # DELETE请求 requests.head(“http://httpbin.org/get”)           # HEAD请求 requests.options(“http://httpbin.org/get” )         # OPTIONS请求

响应的内容

响应内容

意义

r.encoding

获取当前的编码

r.encoding = ‘utf-8’

设置编码

r.text

以encoding解析返回内容。字符串方式的响应体,会自动根据响应头部的字符编码进行解码。

r.content

以字节形式(二进制)返回。字节方式的响应体,会自动为你解码 gzip 和 deflate 压缩。

r.headers

以字典对象存储服务器响应头,但是这个字典比较特殊,字典键不区分大小写,若键不存在则返回None

r.status_code

响应状态码

r.ok

查看r.ok的布尔值便可以知道是否登陆成功

r.json()

Requests中内置的JSON解码器,以json形式返回,前提返回的内容确保是json格式的,不然解析出错会抛异常

r.raise_for_status()

失败请求(非200响应)抛出异常

r.requests.headers

返回发送到服务器的头信息

r.cookies

返回cookie

r.history

返回重定向信息,当然可以在请求是加上allow_redirects = false 阻止重定向

 简单代码实现

 此处是通过urlib实现爬取百度

 此处是使用requests模块进行爬取百度

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装模块
  •  模块常见属性及用法
  • 响应的内容
  •  简单代码实现
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档