2 - 2 - python爬虫 ---urllib库的认识

   
1.—urlli库
   
    urllib 库是 python 中一个最基本的网络请求库。可以模拟浏览器的行为,向指定的服务器发送一个请求,并可以保存服务器返回的数据。
   

   
    1.1—urlopen函数
   
    在 Python3 的 urllib 库中,所有和网络请求相关的方法,都被集中到 urllib.request 模块下面了,先来看看 urlopen 函数基本的使用 `

from urllib import request

# 所访问的目标地址(百度)
url = "http://www.baidu.com"

# 利用 urlopen 函数进行网络请求
resp = request.urlopen(url)

# 利用 read() 读取网页内容
html = resp.read().decode("utf-8")

print(html)

  运行结果如下
在这里插入图片描述

    实际上,使用浏览器访问百度,右键查看源代码,你会发现,跟我们刚才打印出来的数据是一模一样的,也就是说,上面几行代码算是帮我们把百度的首页的全部代码爬下来。
   

   

    1.2—urlretrieve函数
   
    这个函数可以方便的将网页上的的一个文件保存到本地。

from urllib import request

# 所访问的目标地址(百度)
url = "http://www.baidu.com"

request.urlretrieve(url,"baidu.html")

  代码运行之后,就会在当前目录下创建一个 baidu.html 的文件,然后打开它,就可以直接访问百度的首页了。
   

   

2—parse库
   
    parse 主要是用来解析URL(统一资源定位器)的。
   

   

    2.1—urlencode函数
   
    用浏览器发送请求的时候,如果 url 中包含了中文或者其他特殊字符,那么浏览器会自动的给我们进行编码。而如果使用代码发送请求,那么必须进行手动编码,这时候就应该使用 urlencode 函数来实现。urlencode 可以把字典数据装换为 URL 编码的数据。如:

from urllib import parse

# 数据
data = {
    "name":"爬虫基础",
    "greet":"hello world",
    "age":22
}

#进行编码
qs = parse.urlencode(data)
print(qs)

  运行结果如下:
在这里插入图片描述
   

   

    2.2—parse_qs函数
   
    可以将经过编码后的 url 参数进行解码。如:

from urllib import parse

# 数据
data = {
    "name":"爬虫基础",
    "greet":"hello world",
    "age":22
}

#进行编码
qs = parse.urlencode(data)
print("编码之后的结果为======",qs)

#进行解码
qss = parse.parse_qs(qs)
print("解码之后的结果为======",qss)

  运行结果如下:
在这里插入图片描述
    今天的内容就分析这里,感谢大家的学习,再见。欢迎关注本博客,接下来博主会持续更新关于python爬虫的知识,希望与大家一起进步,一起成长,谢谢大家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值