requests库

安装依赖

  • pip install requests

request对象的常用请求方法

  • request 其他六个方法,底层调用该方法
  • get 从服务器获取资源
  • post 将资源提交到服务(不可覆盖)
  • put 修改服务器资源(可覆盖)
  • head 获取服务器资源的部分信息
  • patch 修改服务器资源(可部分覆盖)
  • delete 删除服务器资源

requests七个请求的13个可选参数

  • timeout 设置超时(单位:秒)imeout = 30
  • params get请求携带的参数
  • data post请求携带的参数
  • headers 请求头参数 headers = {"User-Agent": "Mozilla/5.0"}
  • files 上传文件files= {"files":open("git.jpeg","rb")}
  • proxies 服务器代理,模拟真实的主机proxies= {"http":"http://user:[email protected]:9999","https":"http://127.0.0.1:8888"}
  • auth 认证auth=("user","123")

requests库常用属性

import requests


def test_common_attributes():
    url = "https://www.baidu.com/"
    r = requests.get(url)
    print(r.status_code)            # 状态码
    print(r.encoding)               # 字符编码吗,headercontent-type中的值
    print(r.apparent_encoding)      # 实际文档编码,更具文档分析出来的编码
    print(r.headers)                # response
    print(r.text)                   # 服务器返回的文本
    print(r.content)                # 返回的内容的二进制
    print(r.cookies)                # 返回的cookies
    print(r.request.headers)        # 请求头
    print(r.request.url)            # 请求url

requests库常用方法

def test_common_method():
    url = "https://www.baidu.com/"
    r = requests.get(url)
    # 要么正取,返回200状态码,要么抛出异常
    r.raise_for_status()

规范编码

def regular_code():
    url = "https://www.baidu.com/"
    headers = {"User-Agent": "Mozilla/5.0"}
    try:
        r = requests.get(url, headers=headers)
        r.encoding = r.apparent_encoding
        r.raise_for_status()
        return r.text
    except Exception as errorMsg:
        print("发生了异常:"+errorMsg)
        return ""

你可能感兴趣的:(spider)