1、前言

我是在进行全站爬取某个网站时用到的这个包,它的主要功能就是分解URL,在对URL处理时是一个非常有用的包

2、功能介绍

This module defines a standard interface to break Uniform Resource Locator (URL) strings up in components (addressing scheme, network location, path etc.), to combine the components back into a URL string, and to convert a “relative URL” to an absolute URL given a “base URL.”

这组模块(即urllib.parse包)定义了一个标准接口,用于将URL分解成一个一个个组件,将组件重新组建成一个URL字符串。也就是利用基本的URL将相对地址(URL)转化成绝对地址。

3、函数介绍

3.1、URL Parsing

The URL parsing functions focus on splitting a URL string into its components, or on combining URL components into a URL string.

3.1.1、urllib.parse.urlparse(urlstring, scheme=”, allow_fragments=True)

urlparse()会将URL分解成六个部分,看例子

>>> from urllib.parse import urlparse
>>> o = urlparse('http://www.cwi.nl:80/%7Eguido/Python.html')
>>> o
ParseResult(scheme='http', netloc='www.cwi.nl:80', path='/%7Eguido/Python.html',params='', query='', fragment='')
>>> o.scheme
'http'
>>> o.port
80
>>> o.geturl()
'http://www.cwi.nl:80/%7Eguido/Python.html'

这六个部分的解释

Attribute Index Value Value if not present
scheme 0 URL scheme specifier(也就是http/https) scheme parameter
netloc 1 Network location part(域名) empty string
path 2 Hierarchical path(分层路径) empty string
params 3 Parameters for last path element(最后一个路径元素的参数) empty string
query 4 Query component(查询组件) empty string
fragment 5 Fragment identifier(片段识别) empty string

函数方法说明
urlstring : URL路径
scheme : 协议类型,http或者https
allow_fragments: 默认是True,如果设置为False,fragment identifiers将不会被识别,就是说netloc后面的都会当成URL中的路径处理。

If the allow_fragments argument is false, fragment identifiers are not recognized. Instead, they are parsed as part of the path, parameters or query component, and fragment is set to the empty string in the return value.

更多关于urllib.parse的内容可前往官网

urllib.parse包学习相关推荐

  1. python网络爬虫学习笔记(五):urllib.parse库

    urllib.parse库定义了处理URL的标准接口,例如实现URL各部分的抽取.合并以及链接转换.它支持如下协议的URL处理:file.ftp.gopher.hdl.http.https等. 1.u ...

  2. python爬虫学习3:urllib.parse中urlencode(),quote()

    urllib.parse 模块提供了很多解析和组建 URL 的函数,它定义了处理URL的标准接口,例如实现URL各部分的抽取.合并以及链接转换. 其中用来编码是 urlencode() 与 quote ...

  3. 利用python爬虫(part2)--urllib.parse模块

    学习笔记 文章目录 URL地址编码模块 作用 常用的方法 urllib.parse.utlencode({dict}) urllib.parse.quote(string)编码 urllib.pars ...

  4. 一木.溪桥学爬虫-03:请求模块urllib、 urllib.request、urllib.parse.urlencode、urllib.parse.quote(str)、.unquote()

    一木.溪桥 在Logic Education跟Jerry学爬虫 07期:Python 爬虫 一木.溪桥学爬虫-03:请求模块urllib. urllib.request.urllib.parse.ur ...

  5. urlopen中文路径报错from urllib.request import urlopen from urllib.parse import quote from bs4 import Beaut

    描述 当urlopen中出现中文路径是报错.'ascii' codec can't encode characters 解决办法 将中文使用quote包住 from urllib.request im ...

  6. urllib.parse

    1 url分解 import urllib.parse 2 3 result = urllib.parse.urlparse('http://www.baidu.com') 4 print(resul ...

  7. Commons BeanUtils包学习2

    2019独角兽企业重金招聘Python工程师标准>>> Commons BeanUtils包学习2 博客分类: 中间件 java 一.简介: BeanUtils提供对 Java反射和 ...

  8. 包学习(一款安卓端小学到高中全部课程精讲APP)

    简介 [包学习]是一款拥有小学至高中九个学年的全套学习资料的APP,名校名师重点.难点精讲 软件简单介绍 软件分为首页.必刷课.动态教辅.在学.我的五大模块. 进入软件会让你选择对应的年级,小编这里就 ...

  9. python中urllib.parse啥意思_python-urllib.parse模块简述

    前言 小编最近在编写接口自动化测试用例的过程中,需要将get请求url中的部分参数替换成预设的数据,将url中的具有时效性的auth替换成auth生成方法返回值.经过一番调研,最后选取了python的 ...

最新文章

  1. html后缀的网页怎么复制,如何将HTML格式的文本从Chrome浏览器扩展复制到剪贴板上?...
  2. Android修改包名
  3. CVPR 2020录用率十年最低,商汤官宣62篇入选
  4. 【AndroidSupport】LinearLayoutCompat
  5. Linux基础常用命令
  6. 邀您参与 | 阿里巴巴如何扩展 K8s 调度器支持 AI 和大数据任务?
  7. IIS集成模式和经典模式 系统部署的不同
  8. hdu 5299——Circles Game
  9. 从0到1写RT-Thread内核——空闲线程与阻塞延时的实现
  10. Oracle数据库游标数总结
  11. FreeRTOS内核实现05:支持多优先级
  12. PopClip for Mac(剪切板复制粘贴工具)
  13. 红米k20pro短接9008,红米k20pro短接9008_小米、红米全系列短接点拆机进入9008模式刷机图解方法...
  14. eureka多台注册中心_spring cloud eureka集群,注册中心再添加一台服务器
  15. Java基础之面向切面编程@Aspect
  16. 艰难环境下,面腾讯、美团、商汤科技等七家大厂前端有感
  17. 三菱Plc怎么用c语言编程,如何用程序在三菱PLC上写出配方功能
  18. 用U盘制作win7系统安装盘
  19. 若依ruoyi-vue总结
  20. 自媒体怎么赚钱!自媒体怎么做收益比较高!

热门文章

  1. 几个关于财报的基本知识
  2. java重写paint方法时怎么样不覆盖文字_美团十月社招Java面试题合集,JVM+Spring+Spring,看了答案其实也不难...
  3. nginx 安装及使用命令
  4. linux远程图形操作系统,二、Linux操作系统之操作篇-Xmanager 远程访问Linux图形化界面...
  5. 计算机一级在线解析,2014年计算机一级考试MSOffice第三章考点解析 18
  6. 数据增量更新定义_封面数据 | 爬虫技术与应用
  7. axure rp制作输入法_Axure教程丨制作自己的Axure元件库
  8. php大牛额城战笔记,PHP语言大牛开发笔记(8)——MySQL数据库基础回顾[2]
  9. k8s网络架构图_唯品会基于Kubernetes(k8s)网络方案演进
  10. 软件开发生命周期中的设计阶段_BIM咨询在设计阶段包含哪些内容?体现了哪些价值?...