• 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=''
    )
    '''
  • 相关阅读:
    数据结构排序算法之堆排序
    整数划分
    二叉树的递归与非递归
    螺旋数组
    【图的DFS】图的DFS非递归算法
    Docker实战部署应用——Tomcat
    Docker实战部署应用——Redis
    Docker实战部署应用——MySQL5.7
    Docker其他操作:查看内部细节、IP、删除容器
    Docker数据目录相关操作
  • 原文地址:https://www.cnblogs.com/dengyg200891/p/4932286.html
Copyright © 2020-2023  润新知