Python中怎么发送Get请求

发布时间:2021-07-29 11:31:02 作者:Leah
来源:亿速云 阅读:991

这篇文章将为大家详细讲解有关Python中怎么发送Get请求,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一、Python 命名规范

二、发送 get 请求

1.安装 requests

cmd 中安装 requests:

安装:pip install requests

卸载:pip uninstall requests

查看:pip list

切记安装的时候把抓包工具关了。

如果安装报错 timeout,因为没 fq,可以这样装:

pip install -i http://mirrors.aliyun.com/pypi/simple/ requests

附上国内常见的镜像源

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区

  2. 阿里云 http://mirrors.aliyun.com/pypi/simple/

  3. 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/

  4. 豆瓣(douban) http://pypi.douban.com/simple/

  5. 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/

  6. 中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/

requests 官方文档:https://requests.readthedocs.io/zh_CN/latest/

2.发送 get 请求

一个完整的 get 请求,应该包括请求行(url)和请求头(headers)、请求参数(params)。

import  requests  # get请求:url+params请求参数 url="http://v.juhe.cn/laohuangli/d"  # params  建议参数单独拿出来,这样写 p={"key":"abf91475fc19f66c2f1fe567edd75257", "date":"2014-09-11"} a=requests.get(url,params=p)  #发请求 print(a.status_code)#状态码 print(a.text)#raw 文本内容 print(a.headers)#dict print(a.headers['Date'])#key print(a.cookies)#RequestsCookieJar

3.如何判断发送 get 请求要不要传请求头部?

先在 fiddler 中去掉请求头部,用这个接口发下请求试试,如果是正常返回 200 就可以不传头部,如果在工具中发送请求后,提示 403 -  Forbidden: Access is denied,那么就需要传头部。

请求头中那么多参数,哪些参数需要呢?

在工具中把请求头中的参数挨个删掉试试,不行的话就要加上了。

Python中怎么发送Get请求

这个是看开发怎么实现的了,自己写接口自动化代码的时候最好写上请求头,这样规范一些。

4.传入请求头

头部写成字典格式,headers=headers,传入请求头。

有些响应内容是 gzip 压缩的,text 只能打印文本内容,用 content 是二进制流。一般获取返回值内容,推荐用 content。

import  requests url="https://www.baidu.com"  # 构建请求头 headers = {     'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.89 Safari/537.36' }  r=requests.get(url,headers=headers) print(r.status_code) print(r.text)# html乱码 print(r.content.decode("utf-8"))  #decode解压缩展示中文

5.权限被拒:403 - Forbidden: Access is denied

url 和请求参数都对,却没权限。可能原因:服务器识别到你是代码请求的,防脚本机制。

解决办法:需要身份验证,代码中的请求头部加上 cookies)。例如:

Python中怎么发送Get请求

图片来自网络

三、response 的返回内容还有其它更多信息

关于Python中怎么发送Get请求就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. PHP发送POST和GET请求
  2. Django中怎么处理Ajax发送的Get请求

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python get

上一篇:Innodb中mysql如何删除2T的大表

下一篇:Oracle中EBS工具选项之关闭其他表单修改的示例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》