标准库/模块

模块 < 包 < 库

模块

以py为后缀的文件,其中定义了一些常量和函数,模块名称即为py文件的名称。

import 模块

模块的结构化管理,将众多具有相关功能的模块文件组合成包。包文件有_init_.py和模块文件组成,用init文件识别是否为包文件

import.模块

具有某些功能的模块和包都可以被称作为库。

math

菜鸟教程

提供对浮点数的数学运算函数,math 模块下的函数返回值均为浮点数

import math
dir(math)
# 包含54个常量/方法

random

函数 描述
choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数
randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1
random() 随机生成下一个实数,它在[0,1)范围内
seed([x]) 改变随机数生成器的种子seed
shuffle(lst) 将序列的所有元素随机排序
uniform(x, y) 随机生成下一个实数,它在[x,y]范围内

urllib

菜鸟教程

urllib库用于操作网页URL,并对网页的内容进行抓取和处理

模块

request

打开和读取URL

urlopen方法
urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)

  • url,网页地址
  • data,发送到服务器的其他数据对象,默认为none
  • timeout,设置访问超时时间
  • cafile、capath,前者为CA证书,后者为CA证书的路径,使用HTTPS需要用到
  • casefault,已被弃用
  • context,ssl.SSLContext类型,用来指定SSL设置
网页内容读取

read(),读取整个网页内容,可以指定读取长度
readline(),读取文件的一行内容
readlines(),读取文件的全部内容,把读取的内容赋值给一个列表变量

from urllib.request import urlopen
url = urlopen("http://c.biancheng.net/view/2397.html")
print(url.read(100))

print(url.readline())

lines = url.readlines()
for line in lines:
    print(line)
网页状态码

getcode(),获取网页状态码

网页保存本地
from urllib.request import urlopen

myURL = urlopen("https://www.runoob.com/")
f = open("runoob_urllib_test.html", "wb")
content = myURL.read()  # 读取网页内容
f.write(content)
f.close()

本地生成runoob_urllib_test.htm文件,包含网页所有内容

file处理,https://www.runoob.com/python3/python3-file-methods.html

编码解码

quote(),编码
unquote(),解码

import urllib.request
encode_url = urllib.request.quote("https://www.runoob.com/")  # 编码
print(encode_url)

unencode_url = urllib.request.unquote(encode_url)    # 解码
print(unencode_url)

在这里插入图片描述

字符串编码顺序:gbk、unicode、utf16、url解码
字符串解码顺序:url解码、utf16、unicode、gbk

error

包含urllib.request抛出的异常

parse

解析URL

robotparser

解析robots.txt文件

猜你喜欢

转载自blog.csdn.net/WEB___/article/details/127862973