urllib库:解析链接

Posted gxj521test

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了urllib库:解析链接相关的知识,希望对你有一定的参考价值。

1from urllib.parse import urlparse, urlunparse, urlsplit, urlunsplit, urljoin, urlencode, parse_qs, parse_qsl, quote,unquote

1.urlparse() 解析url

1result = urlparse(‘https://mbd.baidu.com/newspage/data/landingsuper?context=%7B%22nid%22%3A%22news_9094304700265862330%22%7D&n_type=0&p_from=1‘)
2print(type(result), result)
3print(result.scheme)
4print(result[0])

2.urlunparse() 构造url 长度最长为6

1data = [‘https‘‘www.baidu.com‘‘index.html‘user‘‘a=6‘‘comment‘]
2print(urlunparse(data))

3.urlsplit() 把参数合并到path

1result = urlsplit(‘https://www.baidu.com/index.html;user?a=6#comment‘)
2print(result)
3print(result.scheme)
4print(result[0])

4.urlunsplit() 组成完整的链接

1data = [‘https‘‘www.baidu.com‘‘index.html‘‘a=6‘‘comment‘]
2print(urlunsplit(data))

5.urljoin() 可以实现链接的解析,拼合,与生成

1print(urljoin("https://www.baidu.com/"‘FAQ.html‘))
2print(urljoin(‘http://www.baiduu.com‘‘https://www.gxj.com/FAQ.html‘))

6.urlencode() 字典转化为请求参数

1params = {
2    ‘name‘‘germey‘,
3    ‘age‘22
4}
5baseurl = ‘http://www.baiduu.com?‘
6url = baseurl + urlencode(params)
7print(‘--urlencode--%s‘ %url)

7.parse_qs() 转化为字典

1query = ‘name=germey&age=22‘
2print(‘--parse_qs---%s‘ %parse_qs(query))

8.parse_qsl() 参数转化为元祖组成的列表

1query = ‘name=germey&age=22‘
2print(‘--parse_qsl--%s‘ %parse_qsl(query))

9.quote() 将中文转化为英文

1keyword = ‘我爱你‘
2url = ‘http://www.baiduu.com‘ + quote(keyword)
3print(‘--quote()--%s‘%url)

10.unquote() 将英文转化为中文

1keyword =‘%E6%88%91%E7%88%B1%E4%BD%A0‘
2url = ‘http://www.baiduu.com‘ + unquote(keyword)
3print(‘--quote()--%s‘%url)
































以上是关于urllib库:解析链接的主要内容,如果未能解决你的问题,请参考以下文章

Python-urllib库parse模块解析链接常用方法

Urllib库基本使用

urllib库解析

Urllib库基本使用详解(爬虫,urlopen,request,代理ip的使用,cookie解析,异常处理,URL深入解析)

python爬虫 urllib库基本使用

python爬虫目录