requests模块中request函数参数介绍

request.request:

参数:

  - method:  提交方式:‘POST‘、‘GET‘、‘PUSH‘等等

  - url:     提交地址  

  - params: 在URL中传递的参数,主要用于GET方式提交 ,例如:
    requests.request(
    method=‘GET‘,
    url= ‘http://www.baidu.com‘,
    params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘}
    )

    提交后如下方式提交到后台:
    http://www.baidu.com?k1=v1&k2=v2

  - data: 在请求体里传递的数据,主要用于非‘GET‘方式提交,如:
    requests.request(
    method=‘POST‘,
    url= ‘http://www.baidu.com‘,
    params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘},

    #方式一:
    data = {‘user‘:‘songtao‘,‘pwd‘: ‘123‘}

    #方式二:

    data = "user = songtao&pwd=123"

    #注:即使用方式一,在往后台提交的时候系统也会自动转换成方式二的形式传递.

    ) 

    请求头:
    content-type: application/url-form-encod.....
    请求体:
    use=alex&pwd=123    

  - json 在请求体里传递的数据,主要用于GET方式提交,与data参数区别在于如果数据中存在字典中嵌套字典时用json传递,并且两者请求头和请求题不同如:
    requests.request(
    method=‘POST‘,
    url= ‘http://www.oldboyedu.com‘,
    params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘},
    json = {‘use‘:‘songtao‘,‘pwd‘: ‘123‘,‘hobby‘:{‘name‘:‘girls‘}}
    )

    请求头:
    content-type: application/json
    请求体:
    "{‘use‘:‘alex‘,‘pwd‘: ‘123‘}"

  - headers 请求头
    requests.request(
    method=‘POST‘,
    url= ‘http://www.baidu.com‘,
    params = {‘k1‘:‘v1‘,‘k2‘:‘v2‘},
    json = {‘use‘:‘songtao‘,‘pwd‘: ‘123‘},
    headers={
    ‘Referer‘: ‘http://dig.chouti.com/‘,
    ‘User-Agent‘: "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36"
    }
    )

  - cookies Cookies

  - files 上传文件

  - auth 基本认证(headers中加入加密的用户名和密码)

  - timeout 请求和响应的超市时间

  - allow_redirects 是否允许重定向

  - proxies 代理

  - verify 是否忽略证书

  - cert 证书文件

  - stream 流

原文地址:https://www.cnblogs.com/songtao1600/p/9092875.html

时间: 2024-11-02 03:56:15

requests模块中request函数参数介绍的相关文章

在requests模块中使用代理发送请求

1. 代理概述 玩爬虫为什么我们不能使用一个固定IP发送请求 你使用一个固定IP发送每秒向对方服务器发送10几个请求,对方认为这样操作不是人干的, 就把你IP给封了 服务器端的人可以根据你IP很快锁定你, 要求你对这种窃取行为赔偿. 代理 正向代理与反向代理 正向代理与反向代理的区别 反向代理: 服务器端知道代理的存在,反向代理是为了保护服务器或负责负载均衡 但是客户端不知道代理的存在的 正向代理: 客户端知道代理的存在,正向代理是为保护客户端,防止追究责任. 但是服务端不知道真实的客户端 2.

使用xml-rpc调试openerp模块中的函数

运行openerp模块中的函数 有很多方式, 可以在视图中加个按钮然后点击它, 也可以在集成开发环境中强制执行它. 不过, 用python写个小脚本,xml-rpc调用直接执行它, 无疑是最简便的方法了 一 调用方法 示例: import xmlrpclib from pprint import pprint uid=1 #用户名admin所对应的id号 pwd="admin" #admin对应的密码 dbname="demo" tcp_port="806

Python中的函数参数

在讲函数参数之前还是简单的讲一下Python中的可变对象与不可变对象. 一.可变对象与不可变对象 在Python中,一切皆对象,python中不存在所谓的传值调用,一切传递的都是对象的引用,也可以认为是传址.所谓可变对象是指,对象的内容可变,而不可变对象是指对象内容不可变(即在其创建后,值不能改变,但可创建新的对象并以同一变量名对其赋值,而旧的对象会被清理掉,这在python里叫对象的垃圾收集).不可变(immutable):int.字符串(string).float.(数值型number).元

php中session_id()函数详细介绍,会话id生成过程及session id长度

php中session_id()函数原型及说明session_id()函数说明:stringsession_id([string$id])session_id() 可以用来获取/设置 当前会话 ID.为了能够将会话 ID 很方便的附加到 URL 之后, 你可以使用常量 SID 获取以字符串格... php中session_id()函数原型及说明 session_id()函数说明: ? 1 string session_id ([ string $id ] ) session_id() 可以用来获

Requests模块中持续性的 Cookie 会话

Requests模块有如下优点: 国际化域名和 URLs Keep-Alive & 连接池 持续性的 Cookie 会话 类浏览器式的 SSL 加密认证 基本/精简式的身份认证 优雅的键/值 Cookies 自动解压 Unicode 编码的响应主体 多段文件上传 连接超时 支持 .netrc 适用于 Python 2.6-3.3 安全的线程使用 其中最吸引我的就是"持续性的 Cookie 会话"功能,它接管了Cookie管理方面的工作,使我们在实现模拟登录时的工作量大大减少.下

Python中关于函数的介绍

一.什么是函数       当我们在日常工作中编写代码时,有没有发现这种情况,写了一套代码,却发现里面有很多段代码出现了有规律的重复,这样就不符合一个合格程序员的标准了,一个合格的程序员编写的代码最重要的应该是简洁,精炼.那么,有什么方法能减少代码中出现的这样有规律的重复的情况吗?当然有,那就是函数.例如我们平常使用最频繁的print(),input(),这些都是函数,属于python内置函数,这些函数是python中事先写好的函数,当我们需要打印一个内容时,我们就可以print().    

caffe 中的一些参数介绍

caffe 参数介绍 solver.prototxt net: "models/bvlc_alexnet/train_val.prototxt" test_iter: 1000 # test_interval: 1000 # base_lr: 0.01 # 开始的学习率 lr_policy: "step" # 学习率的drop是以gamma在每一次迭代中 gamma: 0.1 stepsize: 100000 # 每stepsize的迭代降低学习率:乘以gamma

Python学习心得(三)函数之任意数量实参、任意数量关键字实参、导入模块中的函数

#!/usr/bin/python # -*- coding:utf-8 -*- ''' 1.传递任意数量的实参 Python允许函数传入任意数量的实参,例如: *messages形参名中的*表示让Python创建一个空的名称为messages的元组,接收传入的所有值 ''' def get_person_message(*messages): concat = '' for message in messages: concat += ' ' + message print "\nShow P

Java中,函数参数的传递,是值传递还是引用传递

当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?  答:是值传递. 可以这么理解:有一个Person(name="S"),作为参数传给一个方法,在此方法中将此Person重新设置name=“B”,那么有一下结论 ①这个Person还是这个Person,一直都是他,但是他的名字被改了,不管是原来的引用还是方法里的引用,引用的都是一个对象,所以,所有引用的值都变了 ②如果在方法中重新new了一个Person赋给参数,