Python原生库urllib库不太方便使用,本着"人生苦短, 我用Python"的珍惜生命精神, 基于urllib, 开发了一个对人类来说, 更好使用的一个库——requests

requests模块的使用方法基本上是requests.方法(method,url,**kwargs),括号中传递各种参数的形式来实现不同的应用场景。

各种请求方法:

  • request(method,url,**kwargs)
  • get(url, params=None, **kwargs)
  • post(url, data=None, json=None, **kwargs)
  • head(url, **kwargs)
  • options(url, **kwargs)
  • put(url, data=None, **kwargs)
  • patch(url, data=None, **kwargs)
  • delete(url, **kwargs)

据源代码显示,下面七种也是基于request方法实现的

request方法详细介绍:

requests.request(method,url,**kwargs)

参数详解:

  • method:请求类型
  • url:请求的url

**kwargs:动态参数,都是可选参数

  • params:

  参数类型:字典或bytes

  作用:一般用于get请求时传递数据

  • data:

  参数类型:字典,元祖列表、bytes、类文件对象

  作用:放在请求体中,一般用于post请求传递数据,会自动把数据转换成为&符号连接的形式,如果需要json字符串格式, 需要手动处理用json模块转换, 也可以借助另一个参数json

  • json:

    参数类型:字典

    作用:放在请求体中,一般用于post请求传递数据,会自动把字典转换成json字符串格式

  • headers

    参数类型:字典

    作用:定义HTTP请求头描述

  • cookies:

    参数类型:字典、Cookiejar

    作用:搞定发送给服务器的cookie

  • files

参数类型:字典类型1:

      {"name": file-like-objects}

        字典类型2

  {"name": file-tuple}      name:服务器接收文件信息的字段名字
  file-tuple:('filename', fileobj, 'content_type', custom_headers)

      filename:文件名,不用需索引文件

      fileobj:文件句柄

      content_type:文件类型

      custom_headers:文件头部信息

      

作用:向服务器上传文件

  • auth

    参数类型:元祖

    作用:用于HTTP Basic/Digest/Custom HTTP授权

  • timeout

参数类型:float:超时时长

     tuple(连接超时,读取超时)

作用:控制请求超时时间

  • allow_redirects

参数类型:bool    (默认为True)

作用:控制是否支持重定向

  • proxies

    参数类型:字典  {"协议":URL}

    作用:设置请求代理

  • verify

    参数类型:bool    是否验证SSL ,默认为True

       string    CA证书存放的路径

  作用:验证HTTPS请求

  • cert

    参数类型:string    ssl client cert file(.pem)

         tuple ("cent":"key")  

    作用:客户端验证

  • stream

    参数类型:bool

    作用:相应的内容,是否以分流式分批下载

requests.request()的方法介绍就这么多,具体应用方式,代码操练

其他的方法都是在内部调用了request方法,使用方式不需要加入method参数,其他都一样的

  

    

Python-网络爬虫模块-requests模块之请求的更多相关文章

  1. 04.Python网络爬虫之requests模块(1)

    引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档 ...

  2. Python网络爬虫之requests模块(1)

    引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档 ...

  3. 04,Python网络爬虫之requests模块(1)

    引入 Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症.冗余代码症.重新发明轮子症.啃文档 ...

  4. 06.Python网络爬虫之requests模块(2)

    今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 知识点回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 ...

  5. Python网络爬虫之requests模块(2)

    session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 有些时候,我们在使用爬 ...

  6. Python网络爬虫之requests模块

    今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 知识点回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 引入 ...

  7. 04 Python网络爬虫 <<爬取get/post请求的页面数据>>之requests模块

    一. urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urllib ...

  8. 网络爬虫之requests模块的使用+Github自动登入认证

    本篇博客将带领大家梳理爬虫中的requests模块,并结合Github的自动登入验证具体讲解requests模块的参数. 一.引入:   我们先来看如下的例子,初步体验下requests模块的使用: ...

  9. Python学习---爬虫学习[requests模块]180411

    模块安装 安装requests模块 pip3 install requests 安装beautifulsoup4模块 [更多参考]https://blog.csdn.net/sunhuaqiang1/ ...

  10. python网络爬虫《爬取get请求的页面数据》

    一.urllib库 urllib是python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在python3中的为urllib.request和urllib. ...

随机推荐

  1. Javascript书籍推荐----(步步为赢)

    在此分享一些高清javascript书籍,因为我也没有全部看完,所以在这只是推荐,不同的书适合不同的人,所有的书在网上均有电子书,若找不到,请在博客留言,我有大部分书籍的电子稿.希望有更多的好书分享出 ...

  2. Android 高仿微信6.0主界面 带你玩转切换图标变色

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/41087219,本文出自:[张鸿洋的博客] 1.概述 学习Android少不了模仿 ...

  3. 安卓----Spinner

    <?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android=" ...

  4. bzoj 4318 OSU 概率期望dp

    可以发现:f[i]转移到f[i+1]只和最后一串1的长度和平方有关, 因为如果新加的位置是1,贡献就是(x+1)^3-x^3=3x^2+3x+1,否则为0: 所以对于每一个位置,处理出期望的f,x和x ...

  5. BZOJ_2038_[2009国家集训队]小Z的袜子(hose)_莫队

    BZOJ_2038_[2009国家集训队]小Z的袜子(hose)_莫队 Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无 ...

  6. Esp8266

    原文:http://www.geek-workshop.com/thread-25582-1-1.html ----------------分割线----------------AT+RST OKet ...

  7. mysql 使用Navicat Lite如何打开‘查询编辑器’,使用sql语句对表进行操作!

    今天第一次使用mysql,尽然连查询编辑器都找不到,研究了半天,询问了下大牛,才搞出来,准备写下来,后面方面忘记了有查找的地方,哈哈哈~~ 如何打开"查询编辑器",使用sql语句进 ...

  8. 轻松搞定JSONP跨域请求

    一.同源策略 要理解跨域,先要了解一下"同源策略".所谓同源是指,域名,协议,端口相同.所谓"同源策略",简单的说就是基于安全考虑,当前域不能访问其他域的东西. ...

  9. webapi 跨域问题

    参考:http://www.cnblogs.com/chenxizhang/p/3821703.html 给自己做个笔记 HttpContext.Current.Response.AddHeader( ...

  10. 使用JDBC操作MySQL数据库

    一.JDBC简介 JDBC(Java DataBase Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一的访问,它由一组用Java语言编写的类和接口组 ...