python-爬虫-requests

安装模块

pip install requests

在jupyter notebook里使用Shift+Tab查看

requests

requests库的主要方法

方法解释
requests.requset()构造一个请求,支持以下各种方法
requests.get()获取HTML的主要方法
requests.head()获取HTML头部信息
requests.post()向HTML网页提交POST请求
requests.put()向HTML网页提交PUT请求
requests.patch()向HTML提交局部修改的请求
requests.delete()向HTML提交删除请求
import requestsr = requests.get('http://www.baidu.com/')
r.encoding='utf-8'
r.text

.text属性可以获取以文本形式呈现出的网页源吗或其他结果
在这里插入图片描述

get和post请求

最常用

r = requests.get(url, params, **kwargs)

params:请求时需要提交的参数,字典格式(可选)

**kwargs参数

参数名称描述
params字典或字节序列,作为参数加到URL中
“?key1=value1&key2=value2”
data字典或文件对象,重点作为向服务器提供或提交资源时提交。
与params不同的是,data提交的数据不放在URL链接里,而是放在
与URL链接对应位置的地方作为数据来储存(可以接收一个字符串对象)
jsonjson格式的数据,可作为内容部分向服务器提交
kv={‘key1’:‘value1’}
r=requests.request(‘POST’,‘https://httpbin.org/’,json=kv)
headers字典,是HTTP的相关词,对应了某个向URL访问时发起的HTTP的头字段
可以用该字段定义HTTP访问的HTTP头,来模拟任何想模拟的浏览器对URL发起访问
cookies字典或CookieJar,从HTTP中解析cookie
auth元组,支持HTTP认证功能
files字典,向服务器传输文件时使用的字段
fs={‘files’: open(‘data.txt’,‘rb’)}
timeout设定超时时间,超时产生timeout异常
proxies字典,设置访问代理服务器
allow_redirects开关,表示是否允许对URL进行复位,默认True
stream开关,指是否对获取内容进行立即下载,默认True
verify开关,用于认证SSL整数,默认True
cert用于设置保存本地SSL证书路径

发起请求后,被请求的服务器将会返回一个包含 服务器资源的response对象

响应对象内容

属性说明
status_codeHTTP请求的返回状态,200表示请求成功
textHTTP响应内容的str形式,即返回页面的内容
encoding从HTTP Header中猜测的响应内容编码方式
apparent_encoding从内容中分析出的响应内容编码方式(备选编码方式)
contentHTTP响应内容的二进制形式
r = requests.get('https://httpbin.org/')
r.status_code		# 200
r.encoding			# 'utf-8'
r.apparent_encoding	# 'Windows-1252'

访问目标网站,可以通过data或json方式传递参数

data = {'key1':'value1','key2':'value2'}
r = requests.get(url,data=data)
r.text

requests.post()一般用于表单提交,向指定url提交数据,可提交str、dict、文件等数据

# 向url post一个字典
payload = {'name':'zhangsan','age':'34'}
r = requests.post('http://httpbin.org/post',data=payload)
print(r.text)
# 向url post一个str,自动编码为data
r = requests.post('http://httpbin.org/post',data='helloworld')
print(r.text)

在这里插入图片描述


requests请求HTTPS协议的网址时,报错或得不到数据
一般是由SSL证书引起的,可以在使用requests的时候多加一个verift=False参数来忽略SSL验证

import requestsr = requests.get('https://fanyi.baidu.com/',verify=False)
r.text

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/111550.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WebRTC 源码 编译 iOS端

1. 获取依赖工具 首先,确保你已经安装了以下工具: GitDepot ToolsXcode(确保已安装命令行工具) 2. 下载 depot_tools 使用 git 克隆 depot_tools 并将其添加到你的 PATH 中: /path/to/depot_tools 替换为自己的路径…

ATF(TF-A) EL3 SPMC威胁模型-安全检测与评估

安全之安全(security)博客目录导读 ATF(TF-A) 威胁模型汇总 目录 一、简介 二、评估目标 1、数据流图 三、威胁分析 1、信任边界 2、资产 3、威胁代理 4、威胁类型 5、威胁评估 5.1 端点在直接请求/响应调用中模拟发送方FF-A ID 5.2 端点在直接请求/响应调用中模拟…

驱动开发,IO多路复用(select,poll,epoll三种实现方式的比较)

1.IO多路复用介绍 在使用单进程或单线程情况下,同时处理多个输入输出请求,需要用到IO多路复用;IO多路复用有select/poll/epoll三种实现方式;由于不需要创建新的进程和线程,减少了系统资源的开销,减少了上下…

基于springboot跨国旅游系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

SmFeN钐铁氮稀土永磁材料

钕铁硼作为第三代稀土永磁材料,因其优异的磁性能而获得了广泛应用。但钕铁硼磁体也存在居里温度低,矫顽力温度系数大以及化学稳定性差等缺点,并且镨、钕、镝、铽稀土资源的巨量消耗引发了人们对环境破坏和稀土资源保障可持续性的担忧。因此磁…

期权投资的优势有哪些方面?

随着金融市场的不断演变,越来越多的金融衍生品出现在人们的视线中,特别是上证50ETF期权可以做空T0的交易模式吸引了越来越多的朋友,那么期权投资的优势有哪些方面? 期权是投资市场中一个非常重要的投资方式,期权投资能…

LVS + Keepalived群集

文章目录 1. Keepalived工具概述1.1 什么是Keepalived1.2 工作原理1.3 Keepailved实现原理1.4 Keepalived体系主要模块及其作用1.5 keepalived的抢占与非抢占模式 2. 脑裂现象 (拓展)2.1 什么是脑裂2.2 脑裂的产生原因2.3 如何解决脑裂2.4 如何预防脑裂 …

Redis主从复制(Redis6.2.5版本)

1、Redis单击服务问题? Redis的单机服务在实际的应用中会有很多的问题,所以在实际的使用中如果使用了redis服务,往往都不是单机服务,都会配置主从复制或者哨兵机制及redis的集群服务等。 Redis的单机服务,当主机发生机…

Harmony系统更改手机IP

在当今的互联网环境中,我们经常需要更改手机的IP地址来绕过限制或保护我们的隐私。虽然在一些操作系统上更改IP地址相对较容易,但在Harmony系统上,这可能会有些困难。因此,本文将分享一种在Harmony系统上免费更改手机IP地址的方法…

三相电机的烧毁原因以及如何保护

三相电动机,具有一定的过载能力,短时间过载对电动机的影响不大,但是,电动机的电流长时间超过额定电流,就会使电动机严重发热而损坏,如果电动机定子绕组内部发生短路,也会使绕组电流增加而烧毁电…

带你熟练使用list

🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻强烈推荐优质专栏: 🍔🍟🌯C的世界(持续更新中) 🐻推荐专栏1: 🍔🍟🌯C语言初阶 🐻推荐专栏2: 🍔…

企业工程项目管理系统源码(三控:进度组织、质量安全、预算资金成本、二平台:招采、设计管理)

工程项目管理软件(工程项目管理系统)对建设工程项目管理组织建设、项目策划决策、规划设计、施工建设到竣工交付、总结评估、运维运营,全过程、全方位的对项目进行综合管理 工程项目各模块及其功能点清单 一、系统管理 1、数据字典&am…