爬虫网络连接解析
Posted songdongdong6
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫网络连接解析相关的知识,希望对你有一定的参考价值。
#urlparse()
#url的识别和分段
from urllib.parse import urlparse
result=urlparse("http://www.baidu . com/index .htr比user?id=S#comment")
print(type(result),result)#返回结果是一个 ParseResult 类型的对象,它包含 6个部分,分别是 scheme、 netloc、 path、 params 、 query 和 fragment
#urlunparse()
#它接收一个可迭代的对象,但是它的长度必须为6,否则会抛出异常
from urllib.parse import urlunparse
data =[‘http‘,‘刷w.baidu.com‘, ‘index.html‘,‘user‘,‘a=6‘, ‘comment‘]
print(urlunparse(data))#返回一个url
#urlsplit()
#返回5个结果,将params合并到path中
from urllib.parse import urlsplit
result=urlsplit("http://www.baidu .com/index.html;user?id=S#commen")
print(result)
#urlunsplit()
#将各个部分组合成完整的连接
from urllib.parse import urlunsplit
data=‘http‘,‘州w.baidu.com‘,‘index.html‘,‘a=6‘,‘comment‘]
print(urlunsplit(data))
#urljoin()
#提供一个 base_url (基础链 接 ) 作为第一个参数,将新的链接作为第二个参数,该方法会分析 base_url 的 scheme、 netloc 和 path 这 3 个内容并对新链接缺失的部分进行补充,最后返回结果。
from urllib.parse import urljoin
print(urljoin("www.baidu.com","a.html"))
#urlencode()
#将字典对象添加到url中
from urllib.parse import urlencode
params={
‘name‘:‘asd‘,
‘agg‘:‘ad‘
}
base_url=‘www.baidu.com‘
url=base_url+urlencode(params)
print(url)
#parse_qs
#反序列化,将参数转化为字典
from urllib.parse import parse qs
query= ‘name=germey&age=22‘
print(parse_qs(query))
#parse_qsl
#于将参数转化为元组组成的列表
from urllib.parse import parse_qsl
query= ‘name=germey&age=22‘
print(parse_qsl(query))
#quote()
#将内容转化为 URL 编码的格式。 URL 中带有中文参数时,有时可能会导致乱码的问 题,此时用这个方法可以将巾文字符转化为 URL 编码
keyword =‘壁纸‘
url =‘https://www.baidu.com/s?wd=‘+ quote(keyword)
print(url)
#unquote()
#以进行 URL解码
from urllib.parse import unquote
url = ‘https ://刷w. baidu. com/ s ?wd=%E 5%A3%81%E7%BA%B8‘
print(unquote(url)) 这
以上是关于爬虫网络连接解析的主要内容,如果未能解决你的问题,请参考以下文章