zoukankan      html  css  js  c++  java
  • urlparse模块(专门用来解析URL格式)

    # -*- coding: utf-8 -*-
    #python 27
    #xiaodeng
    #urlparse模块(专门用来解析URL格式)
    
    
    #URL格式:
    #protocol ://hostname[:port] / path / [;parameters][?query]#fragment
    #parameters:特殊参数,一般用的很少。
    
    
    
    #1、urlparse方法
    #将url解析为6元组,返回一个ParseResult对象元组。
    url='http://user:passwd@www.163.com:80/path;parameters?query=argument#fragment'
    import urlparse
    pase=urlparse.urlparse(url)
    print pase
    #ParseResult(scheme='http', netloc='user:passwd@www.163.com:80', path='/path', params='parameters', query='query=argument', fragment='fragment')
    
    
    
    #2、urlsplit方法
    #返回一个SplitResult对象。如果url中没有[;parameters],建议使用urlsplit,更明确,更简洁。
    pase=urlparse.urlsplit(url)
    print pase
    #SplitResult(scheme='http', netloc='user:passwd@www.163.com:80', path='/path;parameters', query='query=argument', fragment='fragment')
    
    
    
    
    #3、获取URL属性值等方法
    url='http://user:passwd@www.163.com:80/path?query=argument#fragment'
    pase=urlparse.urlsplit(url)
    print pase.scheme#http
    print pase.netloc#user:passwd@www.163.com:80
    print pase.path#/path
    print pase.query#query=argument
    print pase.username#user
    print pase.password#passwd
    print pase.hostname#www.163.com
    print pase.port#80
    print pase.geturl()#http://user:passwd@www.163.com:80/path?query=argument#fragment
    
    
    
    #4、urljoin,进行合并url操作,给FAQ.html添加基础URL地址
    print urlparse.urljoin('http://www.cwi.nl/%7Eguido/Python.html', 'FAQ.html')
    #'http://www.cwi.nl/%7Eguido/FAQ.html'
    
    
    
    
    #5、实例:
    url='http://api.k780.com:88/?app=weather.today&weaid=1&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=xml'
    pase=urlparse.urlsplit(url)
    print pase
    '''
    SplitResult(
    scheme='http',
    netloc='api.k780.com:88',
    path='/',
    query='app=weather.today&weaid=1&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=xml',
    fragment=''
    )
    '''
  • 相关阅读:
    6. (在第五步的基础上展开)实现模板推送发送
    5. (全局唯一接口调用凭据)获取Access token
    3. openid的获取
    2. 验证服务器地址的有效性
    Java后端开发规范
    4. (自定义菜单和删除全部菜单)Springboot读取静态json文件
    Docker私有仓库搭建与部署
    Docker容器基础学习一
    运维日志切割--logrotate
    zookeeper学习
  • 原文地址:https://www.cnblogs.com/dengyg200891/p/4932286.html
Copyright © 2011-2022 走看看