• requests库


    import requests
    headers={
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36',
    }

    1.处理get请求

    我们以百度为例,当我们在百度中输入关键字"python"时,其链接地址为:
    https://www.baidu.com/s?ie=utf8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=python&rsv_pq=b85be784000461b9&rsv_t=4ee0sFgpQBgzanEVwm43KWftDR1BUncP4gzlMxT2eOoSXQbCNm8%2FdxmPsoI&rqlang=cn&rsv_enter=1&rsv_dl=tb&rsv_sug3=8&rsv_sug1=6&rsv_sug7=101&rsv_sug2=0&inputT=940&rsv_sug4=4361&rsv_sug=1

    在https://www.baidu.com/s后面都是以键值进行连接的,而wd就是我们的关键字

    我们定义原始url为"https://www.baidu.com/s?",则有

    kw={"wd":"中国"}
    url="https://www.baidu.com/s"
    #将kw用params传递到url中,通过get请求
    response=requests.get(url,params=kw,headers=headers)

    在response中就存有爬取下来的网页信息。

    response.text (返回unicode数据)

    response.context.decode("utf-8") (返回字节流数据,再编码成utf-8)

    response。url(响应的url地址)

    https://www.baidu.com/s?wd=%E4%B8%AD%E5%9B%BD

    response.encoding(response的编码方式)

    utf-8

    response.status_code(HTTP请求状态码,200表示请求成功)

    2.处理post请求

    response=requests.post(url,headers=headers,data=data)
    print(response.json())

    3.使用代理

    resp=requests.get(url,headers=headers,proxies=proxy)

    4.cookie与session

    url="http://www.lagou.com/PLogin.do"
    data={"email":123,"password":"123"}
    headers={
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36',
    }
    session=requests.session()
    resp=session.post(url,headers=headers,data=data)
    print(resp.text)
  • 相关阅读:
    HashMap是无序的
    mysql随笔
    visual stdio 安装OpenGL库文件
    myeclipse解决JSP文件里script背景颜色的调整
    js的鼠标事件整理-------Day47
    Linux环境编程之IPC进程间通信(五):Posix消息队列1
    HDFS 读取、写入、遍历文件夹获取文件全路径、append
    Appfuse搭建过程(下源代码不须要maven,lib直接就在项目里(否则痛苦死!))
    CSS样式命名规则
    关于c++ list容器的操作摸索
  • 原文地址:https://www.cnblogs.com/xiximayou/p/11713779.html
Copyright © 2020-2023  润新知