iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中urllib库和requests库区别
  • 133
分享到

Python中urllib库和requests库区别

2023-06-15 12:06:46 133人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“python中urllib库和requests库区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中urllib库和requests库区别”吧!一、前言在使用pyt

本篇内容主要讲解“python中urllib库和requests库区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Python中urllib库和requests库区别”吧!

一、前言

在使用python爬虫时,需要模拟发起网络请求,主要用到的库有requests库和python内置的urllib库,一般建议使用requests,它是对urllib的再次封装。

那它们两者有什么区别 ?

下面通过案例详细的讲解 ,了解他们使用的主要区别。

二、urllib库

简介:

urllib库的response对象是先创建Http,request对象,装载到reques.urlopen里完成http请求。

返回的是http,response对象,实际上是html属性。使用.read().decode()解码后转化成了str字符串类型,decode解码后中文字符能够显示出来。

from urllib import request #请求头 headers = {     "User-Agent": 'Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWEBKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36' } wd = {"wd": "中国"} url = "http://www.baidu.com/s?" req = request.Request(url, headers=headers) response = request.urlopen(req) print(type(response)) print(response) res = response.read().decode() print(type(res)) print(res)

运行结果:

Python中urllib库和requests库区别

注意:

通常爬取网页,在构造http请求的时候,都需要加上一些额外信息,什么Useragent,cookie等之类的信息,或者添加代理服务器。往往这些都是一些必要的反爬机制。

三、requests库

简介:

requests库调用是requests.get方法传入url和参数,返回的对象是Response对象,打印出来是显示响应状态码。

通过.text 方法可以返回是unicode  型的数据,一般是在网页的header中定义的编码形式,而content返回的是bytes,二级制型的数据,还有 .JSON方法也可以返回json字符串。

如果想要提取文本就用text,但是如果你想要提取图片、文件等二进制文件,就要用content,当然decode之后,中文字符也会正常显示。

requests的优势:

Python爬虫时,更建议用requests库。因为requests比urllib更为便捷,requests可以直接构造get,post请求并发起,而urllib.request只能先构造get,post请求,再发起。

例:

import requests  headers = {     "User-Agent": "Mozilla/5.0 (linux; U; Android 8.1.0; zh-cn; BLA-AL00 Build/HUAWEIBLA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/8.9 Mobile Safari/537.36" } wd = {"wd": "中国"} url = "http://www.baidu.com/s?" response = requests.get(url, params=wd, headers=headers) data = response.text data2 = response.content print(response) print(type(response)) print(data) print(type(data)) print(data2) print(type(data2)) print(data2.decode()) print(type(data2.decode()))

运行结果 (可以直接获取整网页的信息,打印控制台):

Python中urllib库和requests库区别

四、总结

本文基于Python基础,主要介绍了urllib库和requests库的区别。

在使用urllib内的request模块时,返回体获取有效信息和请求体的拼接需要decode和encode后再进行装载。进行http请求时需先构造get或者post请求再进行调用,header等头文件也需先进行构造。

requests是对urllib的进一步封装,因此在使用上显得更加的便捷,建议在实际应用当中尽量使用requests。

希望能给一些对爬虫感兴趣,有一个具体的概念。方法只是一种工具,试着去爬一爬会更容易上手,网络也会有很多的坑,做爬虫更需要大量的经验来应付复杂的网络情况。

到此,相信大家对“Python中urllib库和requests库区别”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Python中urllib库和requests库区别

本文链接: https://www.lsjlt.com/news/280143.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python中urllib库和requests库区别
    本篇内容主要讲解“Python中urllib库和requests库区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中urllib库和requests库区别”吧!一、前言在使用Pyt...
    99+
    2023-06-15
  • Python爬虫urllib和requests的区别详解
    我们讲了requests的用法以及利用requests简单爬取、保存网页的方法,这节课我们主要讲urllib和requests的区别。 1、获取网页数据 第一步,引入模块。 两者引入...
    99+
    2024-04-02
  • Python中requests库
    文章目录 requests库一、 基本概念1、 简介2、 获取3、 http 协议3.1 URL3.2 常用 http 请求方法 二、 使用方法1、 基本语法requests 库...
    99+
    2023-09-07
    python http 开发语言
  • python的requests库和url
    python中有多种库可以用来处理http请求,比如python的原生库:urllib包、requests类库。urllib和urllib2是相互独立的模块,python3.0以上把urllib和urllib2合并成一个库了,request...
    99+
    2023-01-31
    python requests url
  • python中urllib.request和requests的区别是什么
    这篇文章给大家介绍python中urllib.request和requests的区别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究...
    99+
    2023-06-14
  • Python中urllib3与urllib的区别是什么
    这期内容当中小编将会给大家带来有关Python中urllib3与urllib的区别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。urllib库urllib 是一个用来处理网络请求的python标准库...
    99+
    2023-06-20
  • urllib库如何在python中使用
    今天就跟大家聊聊有关urllib库如何在python中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、请求模块:urllib.requestpython2import urll...
    99+
    2023-06-14
  • Python爬虫中urllib库怎么用
    这篇文章给大家分享的是有关Python爬虫中urllib库怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、说明:urllib库是python内置的一个http请求库,requests库就是基于该库开发出来...
    99+
    2023-06-29
  • Python爬虫技术栈 | urllib库&&urllib3库
    ❤️urllib库详解❤️ 每篇前言: 第一部分:urllib库 一、request模块:发送请求 1.urlopen() ...
    99+
    2023-09-10
    python 爬虫 urllib库urllib3库
  • python urllib库的使用详解
    目录1、请求模块:urllib.request data参数:post请求urlopen()中的参数timeout:设置请求超时时间:响应类型:响应的状态码、响应头:使用代理:url...
    99+
    2024-04-02
  • Python中requests库怎么使用
    这篇文章主要介绍了Python中requests库怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中requests库怎么使用文章都会有所收获,下面我们一起来看看吧。一、requests库re...
    99+
    2023-06-30
  • python中如何导入requests库
    python中导入requests库的方法:1、在win操作系统中找到python程序目录;2、打开idle工具;3、在idle中新建一个shell脚本;4、输入“import requests”指令导入requests库即可具体操作方法:...
    99+
    2024-04-02
  • Python标准库学习之urllib
    本系列以python3.4为基础urllib是Python3的标准网络请求库。包含了网络数据请求,处理cookie,改变请求头和用户代理,重定向,认证等的函数。urllib与urllib2:python2.x用urllib2,而pytho...
    99+
    2023-01-31
    标准 Python urllib
  • Python爬虫之urllib库详解
    目录一、说明:二、urllib四个模块组成:三、urllib.request1、urlopen函数2、response 响应类型3、Request对象 4、高级请求方式四、urlli...
    99+
    2024-04-02
  • python标准库和第三方库有什么区别
    Python标准库是Python官方提供的一组模块,可以直接使用,无需额外安装。它们包含了一些常用的功能和工具,如文件操作、网络通信...
    99+
    2023-08-08
    python
  • Python Requests库知识汇总
    目录什么是Requests库?为什么要学习Requests库?快速开始发送请求URL传参响应内容二进制响应内容JSON响应内容原始响应内容自定义请求头更复杂的POST请求More c...
    99+
    2023-05-18
    Python Requests库 Python Requests
  • python如何安装requests库
    python安装requests库的方法:1、打开运行窗口输入“cmd”进入命令行窗口;2、输入“pip install requests”命令来安装requests库;3、安装成功后,在python编辑器中输入“import reques...
    99+
    2024-04-02
  • Python中requests库的用法详解
    目录一、requests库安装请求响应二、发送get请求1、一个带参数的get请求:2、响应json3、添加头信息headers4、添加和获取cookie信息三、发送post请求1、...
    99+
    2024-04-02
  • python爬虫中requests库怎么用
    小编给大家分享一下python爬虫中requests库怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python爬虫—requests库的用法request...
    99+
    2023-06-25
  • python中requests库+xpath+lxml简单使用
    目录安装简单使用1.简单访问一个url:2.带参数访问url4.requests的一些常用方法和主要参数5.requests.Response对象的属性说明xpath简介lxml简介...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作