requests库

利用pip安装:

pip install requests

基本请求

req = requests.get("https://www.baidu.com/")

req = requests.post("https://www.baidu.com/")

req = requests.put("https://www.baidu.com/")

req = requests.delete("https://www.baidu.com/")

req = requests.head("https://www.baidu.com/")

req = requests.options(https://www.baidu.com/)

1.get请求

参数是字典,我们可以传递json类型的参数:

import requests

from fake_useragent import UserAgent#请求头部库

headers = {"User-Agent":UserAgent().random}#获取一个随机的请求头

url = "https://www.baidu.com/s"#网址

params={

"wd":"豆瓣" #网址的后缀

}

requests.get(url,headers=headers,params=params)

返回了状态码,所以我们要想获取内容,需要将其转成text:

#get请求

headers = {"User-Agent":UserAgent().random}

url = "https://www.baidu.com/s"

params={

"wd":"豆瓣"

}

response = requests.get(url,headers=headers,params=params)

response.text

2.post 请求

参数也是字典,也可以传递json类型的参数:

import requests

from fake_useragent import UserAgent

headers = {"User-Agent":UserAgent().random}

url = "https://www.baidu.cn/index/login/login" #登录账号密码的网址

params = {

"user":"1351351335",#账号

"password":"123456"#密码

}

response = requests.post(url,headers=headers,data=params)

response.text

因为这里需要一个登录的网页,我这里就随便用了一个,没有登录,所以显示的结果是这样的,如果想要测试登录的效果,请找一个登录的页面去尝试一下。

3.IP代理

采集时为避免被封IP,经常会使用代理,requests也有相应 的proxies属性。

#IP代理

import requests

from fake_useragent import UserAgent

headers = {"User-Agent":UserAgent().random}

url = "http://httpbin.org/get" #返回当前IP的网址

proxies = {

"http":"http://yonghuming:123456@192.168.1.1:8088"#http://用户名:密码@IP:端口号

#"http":"https://182.145.31.211:4224"# 或者IP:端口号

}

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

代理IP可以去:快代理去找,也可以去购买。

http://httpbin.org/get。这个网址是查看你现在的信息:

4.设置访问超时时间

可以通过timeout属性设置超时时间,一旦超过这个时间还没获取到响应内容,就会提示错误。

#设置访问时间

requests.get("http://baidu.com/",timeout=0.1)

5.证书问题(SSLError:HTTP)

ssl验证。

import requests

from fake_useragent import UserAgent #请求头部库

url = "https://www.12306.cn/index/" #需要证书的网页地址

headers = {"User-Agent":UserAgent().random}#获取一个随机请求头

requests.packages.urllib3.disable_warnings()#禁用安全警告

response = requests.get(url,verify=False,headers=headers)

response.encoding = "utf-8" #用来显示中文,进行转码

response.text

6.session自动保存cookies

import requests

from fake_useragent import UserAgent

headers = {"User-Agent":UserAgent().chrome}

login_url = "https://www.baidu.cn/index/login/login" #需要登录的网页地址

params = {

"user":"yonghuming",#用户名

"password":"123456"#密码

}

session = requests.Session() #用来保存cookie

#直接用session 歹意requests

response = session.post(login_url,headers=headers,data=params)

info_url = "https://www.baidu.cn/index/user.html" #登录完账号密码以后的网页地址

resp = session.get(info_url,headers=headers)

resp.text

因为我这里没有使用需要账号密码的网页,所以显示这样:

我获取了一个智慧树的网页

#cookie

import requests

from fake_useragent import UserAgent

headers = {"User-Agent":UserAgent().chrome}

login_url = "https://passport.zhihuishu.com/login?service=https://onlineservice.zhihuishu.com/login/gologin" #需要登录的网页地址

params = {

"user":"12121212",#用户名

"password":"123456"#密码

}

session = requests.Session() #用来保存cookie

#直接用session 歹意requests

response = session.post(login_url,headers=headers,data=params)

info_url = "https://onlne5.zhhuishu.com/onlinWeb.html#/stdetInex" #登录完账号密码以后的网页地址

resp = session.get(info_url,headers=headers)

resp.encoding = "utf-8"

resp.text

7.获取响应信息

代码

含义

resp.json()

获取响应内容 (以json字符串)

resp.text

获取相应内容(以字符串)

resp.content

获取响应内容(以字节的方式)

resp.headers

获取响应头内容

resp.url

获取访问地址

resp.encoding

获取网页编码

resp.request.headers

请求头内容

resp.cookie

获取cookie

到此这篇关于python爬虫利器之requests库的用法(超全面的爬取网页案例)的文章就介绍到这了,更多相关python爬虫requests库用法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

本文标题: python爬虫利器之requests库的用法(超全面的爬取网页案例)

本文地址: http://www.cppcns.com/jiaoben/python/370172.html

python智慧树视频爬取_python爬虫利器之requests库的用法(超全面的爬取网页案例)...相关推荐

  1. Python爬虫利器一Requests库的用法

    之前我们用了 urllib 库,这个作为入门的工具还是不错的,对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助.入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取.那么这一节来简单介 ...

  2. Python爬虫利器之Beautiful Soup的用法,以及实例!

    可以利用 pip 来安装: pip install beautifulsoup4 源代码: import requests r = requests.get("https://python1 ...

  3. python 抢票代码 猫眼演出_python爬虫实例-猫眼电影

    1.环境准备 python3.6 pycharm 安装requests库,pip install requests 2.XPath语法 XPath 是一门在 XML 文档中查找信息的语言.XPath ...

  4. 一起学爬虫——通过爬取豆瓣电影top250学习requests库的使用

    一起学爬虫--通过爬取豆瓣电影top250学习requests库的使用 学习一门技术最快的方式是做项目,在做项目的过程中对相关的技术查漏补缺. 本文通过爬取豆瓣top250电影学习python req ...

  5. python3爬虫实战:requests库+正则表达式爬取头像

    python3爬虫实战:requests库+正则表达式爬取头像 网站url:https://www.woyaogexing.com/touxiang/qinglv/new/ 浏览网页:可以发现每个图片 ...

  6. python beautifulsoup库_Python爬虫系列:BeautifulSoup库详解

    点击上方蓝字关注"程序员Bob"呀~ 每个人的生命都是通向自我的征途,是对一条道路的尝试,是一条小径的悄然召唤.人们从来都无法以绝对的自我之相存在,每一个人都在努力变成绝对自我,有 ...

  7. Python 网络爬虫笔记2 -- Requests库实战

    Python 网络爬虫笔记2 – Requests库实战 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:P ...

  8. Python 网络爬虫笔记1 -- Requests库

    Python 网络爬虫笔记1 – Requests库 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Pyt ...

  9. python gpu加速库比matlab快吗_Python之Unittest和Requests库详解

    1.按类来执行 import unittest class f1(unittest.TestCase): def setUp(self): pass def tearDown(self): pass ...

  10. 苹果和虫子编程题python_2020智慧树《兽医寄生虫学》免费最全题库2020中国大学mooc《线性代数习题选讲》...

    2020智慧树<兽医寄生虫学>免费最全题库2020中国大学mooc<线性代数习题选讲>章节答案 更多相关问题 [多选题]<合同法>第122条规定,因当事人一方违约行 ...

最新文章

  1. mysql连接查询之间的差异性
  2. 第一个smarty例子--分页显示数据
  3. protobuf java 自动反射_protobuf在java应用中通过反射动态创建对象
  4. kettle使用文件导入到Postgresql出现如下几种问题的总结
  5. python response[200_python说httpresponse代码是200,但服务器说是301
  6. linux+nginx搭建server与client通过证书双向认证环境
  7. linux上的MySQL默认端口,linux下mysql 查看默认端口号与修改端口号方法
  8. 基于 MapObjects开发电子海图系统的研究与实现
  9. 让Fireball CodeEditor控件禁止中文双倍输入
  10. mysql增加连接_mysql增加连接数
  11. CocosCreator之Tween缓动动画
  12. zabbix_sender安装及使用
  13. js根据后缀判断文件文件类型
  14. 个人永久性免费-Excel催化剂功能第21波-Excel与Sqlserver零门槛交互-执行SQL语句篇...
  15. 2014年禁毒工作总结,2015年工作打算
  16. 联想电脑尺寸在哪里看_图文教你如何查看thinkpad的型号_查看thinkpad型号的方法-系统城...
  17. 公司项目重构-Web安全-文件上传漏洞
  18. 信道估计中的导频结构
  19. java 指针定义_Java中关于指针的个人理解
  20. GRE词汇统计大全(一)

热门文章

  1. 计算机组成原理试题库10,计算机组成原理试题10
  2. 危害极大的计算机病毒cih发作的日期是,计算机病毒防治(答案)
  3. 全平台adb工具安装方法
  4. GCC与VC2013性能比较
  5. 【画学numpy】Drawing and Studying Numpy
  6. 计算半圆弧的周长及半圆的面积
  7. 2022年计算机二级Java语言程序设计练习题及答案
  8. MQTT采集协议转换器转103 104 cdt 61850动环工业网关可定制试用
  9. 解决华硕FX80G* Fn+F5或其他功能键切换不显示问题
  10. python 下载公众号文章_python如何导出微信公众号文章方法详解