关于正则和urlib的复习

urlib提供了一系列用于操作URL的功能
· urllib.request模块是用来打开和读取URL的;

· urllib.error模块包含一些有urllib.request产生 的错误,可以使用try进行捕捉处理;

· urllib.parse模块包含了一些解析URLs的方法
GET:
urllib的request模块可以非常方便地抓取URL内容,也就是发送一个GET请求到指定的页面,然后返回HTTP的响应
POST:
用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求URL所指定资源的附加新子项。比如网页上的注册、登录等等都是POST请求。
HTTP状态码主要是为了标识此次HTTP请求的运行状态

常见状态码:

  • 100~199:表示服务器成功接收部分请求,要求客户端继续提交其余请求才能完成整个处理过程。
  • 3xx:重定向
    • 301:永久重定向
    • 302:临时重定向
  • 4xx:服务器错误
    • 400:错误请求
    • 401:未授权
    • 403:服务器拒绝访问
    • 404:找不到路径
    • 405:请求方式不被允许
    • 408:请求超时
  • 5xx:服务器错误
    • 500:服务器内部错误
    • 501: 服务器不具备完全请求的功能
    • 503:服务器不可用

请求头:

HTTP头部信息由众多的头域组成,每个头域又一个域名、冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空白符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符。

  • 常见的请求头参数:
    User-Agent、Cookie、Referer (页面跳转处)、Host (主机和端口号) 、X-Requested-With: XMLHttpReques(表示是一个Ajax异步请求)、Connection、Upgrade-Insecure-Requests、Accept (传输文件类型)、Accept-Encoding(文件编解码格式)

paser:

  • parse.urlencode():将字典类型的参数转为url编码格式
  • parse.parse_qs():将url编码格式的字符串转化为字典类型
  • parse.quote()将中文字符转为url编码的字符
  • parse.unquote()将url编码的字符转换为中文字符
  • parse.urljoin将不完整的url参照基类url,拼接完整
  • parse.urlparse():将url进行拆分
  • parse.urlunparse():将url的各个部分合并为一个完整的url
    error:
    所有urllib请求的异常基类,所有请求过程中的异常都可以通过这个异常捕获到,可以通过reason属性来查看发生异常的原因

正则:

  • . 匹配除了换行符之外的任意字符
  • \d 匹配数字0-9 =>[0-9] => ^\D
  • \D 匹配非数字
  • \s 匹配空白字符(空格 \n \r \t)
  • \S 匹配非空白字符
  • \w 匹配单词字符[a-zA-Z0-9_]
  • \W 匹配非单词字符
  • ^ 以…开头
  • $ 以…结尾
  • [0-9a-z] :表示匹配数字0~9,字母a~z
  • [^a-z] : 不匹配a-z之间的字符
  • #多字符匹配,贪婪模式
  • 匹配*号前的字符任意次数
  • +匹配+号前的字符至少一次
  • ?匹配?号前的字符0~1次
  • #多字符匹配,非贪婪模式 (abcdeabcde) e
    *?
    +?
    ??
    | 或
    () 分组
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值