| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
 一. urllib的使用 
- import urllib.request    # 导入request子模块
 
 - url = 'https://www.cnblogs.com/'
 
 - response = urllib.request.urlopen(url=url)  # 发送网络请求
 
 - print('响应状态码为:',response.status)
 
 - print('响应头所有信息为:',response.getheaders())
 
 - print('响应头指定信息为:',response.getheader('Accept-Ranges'))
 
 - # 读取HTML代码并进行utf-8解码
 
 - print('博客园代码如下:\n',response.read().decode('utf-8'))
 
  复制代码 
 
 二. urllib的使用发送POST请求并带UA浏览器 
 
- import urllib.request  # 导入urllib.request模块
 
 - import urllib.parse    # 导入urllib.parse模块
 
 - url = 'https://www.httpbin.org/post'  # 请求地址
 
 - # 定义请求头信息
 
 - headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36'}
 
 - # 将表单数据转换为bytes类型,并设置编码方式为utf-8
 
 - data = bytes(urllib.parse.urlencode({'hello':'python'}),encoding='utf-8')
 
 - # 创建Request对象
 
 - r = urllib.request.Request(url=url,data=data,headers=headers,method='POST')
 
 - response = urllib.request.urlopen(r)  # 发送网络请求
 
 - print(response.read().decode('utf-8'))  # 读取HTML代码并进行utf-8解码
 
  复制代码 
 
 三. urllib的异常处理 
- import urllib.request  # 导入urllib.request模块
 
 - import urllib.error  # 导入urllib.error模块
 
 - import socket  # 导入socket模块
 
 - url = 'https://www.python.org/'  # 请求地址
 
 - try:
 
 -     # 发送网络请求,设置超时时间为0.1秒
 
 -     response = urllib.request.urlopen(url=url, timeout=0.1)
 
 -     print(response.read().decode('utf-8'))  # 读取HTML代码并进行utf-8解码
 
 - except urllib.error.URLError as error:  # 处理异常
 
 -     if isinstance(error.reason, socket.timeout):  # 判断异常是否为超时异常
 
 -         print('当前任务已超时,即将执行下一任务!')
 
  复制代码 
 
 四. urllib的url拼接 
- import urllib.parse    #导入urllib.parse模块
 
 - base_url = 'https://docs.python.org'   # 定义基础链接
 
 - # 第二参数不完整时
 
 - print(urllib.parse.urljoin(base_url,'3/library/urllib.parse.html'))
 
 - # 第二参数完成时,直接返回第二参数的链接
 
 - print(urllib.parse.urljoin(base_url,'https://docs.python.org/3/library/urllib.parse.html#url-parsing'))
 
  复制代码 
 
可能补充的不够完整 谅解 谢谢 
 
 
 |   
 
 
 
 |