, value): 将key:value添加导头信息中
add_data(key, value): 添加提交信息
HTTPCookieProcessor(cookiejar): 用来处理cookie, 返回一个 HTTPCookieProcessor 类
build_opener(handlers): 创建一个opener对象
- handlers: 可以时cookie,代理等, cookie需要使用HTTPCookieProcessor(处理)
- class opener: urlopen()方法是它的一个实现,用于打开链接
- open(Request): 使用Request类打开链接
error: 异常处理模块
parse: 对url进行处理的模块
- urlencode(query, doseq=False, safe='', encoding=None, errors=None, quote_via=quote_plus): 对post请求的表单进行处理
- unquote(string, encoding='utf-8', errors='replace') : 将url(%2B等)转换成正常字符串
robotparser: robots.txt解析模块
http.cookielib: 主要作用是提供可存储cookie的对象
- class CookieJar: 一个用来保存Cookie的类
- class FileCookieJar:
- class MozillaCookieJar: 将Cookie保存到文件中
- save(filename=None, ignore_discard=False, ignore_expires=False): 将cookie保存到filename文件中
- ignore_discard: 为True,即使cookies将被丢弃也将它保存下来
- ignore_expires: 为True,如果在该文件中cookies已经存在,则覆盖原文件写入
- load(filename=None, ignore_discard=False, ignore_expires=False): 将cookie从文件中取出
- class LWPCookieJar:
socket: 套接字相关模块,处于网路的传输层
- socket(family=AF_INET, type=SOCK_STREAM): 创建一个套接字, 返回 socket 类
- family: 套接字所属协议
- AF_INET: ipv4(默认)
- AF_INET6: ipv6
- type: 套接字类型
- SOCK_STREAM: tcp连接(默认)
- SOCK_DGRAM: udp连接
- class socket: 套接字连接的类
- connect(address): 连接到远程服务器, 一般在tcp连接时使用
- send(bytes): 发送数据,一般在tcp连接时使用
- sendto(bytes, address): 发送数据,一般在udp连接时使用
- bind(address): 将套接字绑定到指定地址
- listen([backlog]): 启动监听
- accept(): 接受一个连接, 必须先启动监听, 返回客户端套接字对象和连接来源
- getpeername(): 返回连接的远程地址
- recv(bufsize): 从套接字接收数据
- recvfrom(bufsize): 从套接字接收数据,返回 数据,地址
- close(): 关闭套接字连接
getopt
- getopt(args, shortopts, longopts = []): 读取命令行参数使用,返回 解析的参数列表,其他参数
- args: 参数,一般为 sys.argv[1:]
- shortopts: 短参数(-a)
- 'ab:c': 没有':'不跟参数, b 后跟参数
- longopts: 长指令(--a)
- ['abc', 'bcd=', 'cde']: 没有'='不跟参数
configparser: 配置文件操作的模块
- class ConfigParser: 配置文件操作类
- read(path, encoding): 打开指定文件
- sections(): 获取所有的域
- options(sectionname): 获取指定域下的所有key
- items(sectionname): 获取指定域下的所有 (key, value) 对
- get(sectionname,key): 获取指定域下key对应的value
- add_section(sectionname): 添加域, 添加完成后需要写入
- set(sectionname, key, value): 在指定域添加一条配置, 添加完成后需要写入
- write(file): 写入文件
- file: open(path, 'w', encoding)
- 配置文件:
[sectionname1]
key1 = value1
re: 正则表达式
- search(pattern, string, flags=0): 查找字符串于正则表达式匹配的第一个位置,返回 match 类
- match(pattern,string): 在字符串开始处匹配, 返回 Match 对象(可以使用group方法返回匹配部分)
- compile(pattern): 创建指定正则表达式的模式对象, 当再次search时不用指定正则表达式
- split(pattern,string): 根据模式分割字符串,返回列表
- findall(pattern,string): 列表形式返回匹配项
- sub(pat,repl,string) : 用 repl 替换 pat 匹配项
- escape(string) : 对字符串里面的特殊字符串进行转义
itertools: 产生不同类型迭代器
- count(start=0, step=1): 创建一个从 start 开始,以 step 为步长的的无限整数迭代器
- cycle(iterable): 对 iterable 中的元素反复执行循环,返回迭代器
- repeat(object [,times]: 反复生成 object
- chain(iterable1, iterable2, ...): 将多个可迭代对象连接起来,作为一个新的迭代器返回
- compress(data, selectors): 对数据进行筛选
- data: 数据集合
- selectors: 对data进行筛选的标准,当 selectors 元素为true是,保留 data 对应位置的元素,否则去除
- dropwhile(predicate, iterable): 对集合中的数据进行筛选
- predicate: 函数,对于 iterable 中的元素,如果 predicate(item) 为 true,则丢弃该元素,否则返回该项及所有后续项。
- iterable: 可迭代对象
- groupby(iterable[, keyfunc]): 对序列进行分组
- iterable: 一个可迭代对象
- keyfunc: 分组函数,用于对 iterable 的连续项进行分组,如果不指定,则默认对 iterable 中的连续相同项进行分组,返回一个 (key, sub-
|