zoukankan      html  css  js  c++  java
  • requests请求响应相关参数

    请求库requests

    1. Get请求相关参数

    import requests
    
    url = 'http://httpbin.org/get?name=bob'   # 请求url,?后面拼接的是参数
    
    params = {'name': 'nick','age': '18'}	# 参数,与url上的参数同时存在,没有优先级,若key相同,则值以列表形式存在
    
    cookies = {'xxx': 'xxx','yyy': 'yyy'}  # cookie值,若headers中有cookie,则使用headers中的cookie
    
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36",  # 若未设置User-Agent,则会检测为python请求
        "Cookie": 'aaa=aaa;bbb=bbb'
    }
    
    proxies = {'http':'http://ip:端口'}  # 代理地址,固定的格式,如果是https就用https
    
    timeout = 0.5  # 设置超时时间,若请求超出时间则报错
    
    allow_redirects = True  # 重定向中使用,是否允许跳转
    
    res = requests.get(url=url,headers=headers,params=params,cookies=cookies)
    print(res.text)
    

    2. Post请求相关参数

    import requests
    
    url = 'http://httpbin.org/post'  # 请求url
    data = {
        'name': 'nick',  # form数据
        'age': '18',
    }
    json = {"sex":'man'}  # json格式数据,如果有data时,json为null
    files = {'file':open('a.txt','rt',encoding='utf8')}  # 文件数据
    cookies = {
        'xxx': 'xxx',
        'yyy': 'yyy'
    }
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36",
        "Cookie": 'aaa=aaa;bbb=bbb'
    }
    timeout = 0.5  # 超时时间
    allow_redirects = True  # 是否允许重定向
    res = requests.post(url=url, headers=headers, data=data,cookies=cookies,json=json,files=files)
    print(res.text)
    

    3. request请求

    import requests
    requests.request(method,url,**kwargs)  # method为请求方式,url请求地址。get,post请求本质上是继承了request请求
    

    4. 响应相关参数

    import requests
    r = requests.get(....)
    
    r.url  # 请求的url
    
    r.text  # 获得响应体文本信息
    
    r.encoding = 'gbk'  # 设置编码方式,用来解决乱码
    
    r.content  # 二进制信息
    
    r.json  # 相当于json.loads(r.text),若返回的不是json数据,会报错
    
    r.status_code  # 响应状态码
    
    r.headers  # 响应头
    
    r.cookies  # 拿cookie
    
    r.history  # 有重定向时,取到的是 [响应对象1,响应对象2...]
    

    5. 自动保存cookie的请求

    session = requests.session()   
    r = session.get(...)  # 会将cookie保存在seesion中,发次发请求时会带上cookie
    
    # 补充(保存cookie到本地)
    import http.cookiejar as cookiejar
    import requests
    session = requests.session()
    session.cookies = cookiejar.LWPCookieJar()
    
    session.cookies.load(filename='cookie.txt')  # 取cookie
    
    res = session.get('http://www.baidu.com')
    session.cookies.save(filename='cookie.txt')  # 存cookie
    
  • 相关阅读:
    痞子衡嵌入式:利用i.MXRT1060,1010上新增的FlexSPI地址重映射(Remap)功能可安全OTA
    “既生 ExecutorService, 何生 CompletionService?”
    55
    .map() is not a function【js报错】
    内网穿透之流量代理转发
    JDK8 String类知识总结
    Java并发编程(07):Fork/Join框架机制详解
    数据源管理 | 分布式NoSQL系统,Cassandra集群管理
    Solon详解(三)- Solon的web开发
    Solon详解(二)- Solon的核心
  • 原文地址:https://www.cnblogs.com/863652104kai/p/11693382.html
Copyright © 2011-2022 走看看