python学习笔记:网络请求——urllib模块
2024-09-03 02:02:08
python操作网络,也就是打开一个网站,或者请求一个http接口,可以使用urllib模块。
urllib模块是一个标准模块,直接import urllib即可,在python3里面只有urllib模块,在python2里面有urllib模块和urllib2模块
Urllib是python内置的HTTP请求库
包括以下模块
urllib.request 请求模块
urllib.error 异常处理模块
urllib.parse url解析模块
urllib.robotparser robots.txt解析模块
因为有更好用的模块,所以再在此不对此模块进行更多解释,想更好的学习urllib模块可以参考下面的博客或官方文档。
参考博客:http://www.cnblogs.com/zhaof/p/6910871.html
官方文档:https://docs.python.org/3/library/urllib.html
import json
from urllib.request import urlopen # 打开网页
from urllib.parse import urlencode # ====get请求====
url='https://www.cnblogs.com/haifeima/p/9829601.html#autoid-5-0-5'
res=urlopen(url).read()#发起get请求,并获取结果
print(res.decode())#返回的是二进制类型,所以要decode变成字符串
f=open('b.html','w',encoding='utf-8') #将上面的网页保存到本地,执行后会在本地生成一个叫做b.html的文件
f.write(res.decode())
f.close() # ====post请求====
url='http://api.nnzhp.cn/api/user/login'
data={"username":"niuhanyang","passws":"aA123456"}
data=urlencode(data)
res=urlopen(url,data).read()#发起post请求,加个date把数据传进来,获取结果
print(res.decode())#转成decode格式
d=json.loads(res.decode())#转成字典
print(d.get('login_info').get('sign'))
f=open('b.html','w',encoding='utf-8') #将上面的网页保存到本地,执行后会在本地生成一个叫做b.html的文件
f.write(res.decode())
f.close()
最新文章
- LINQ系列:LINQ to SQL Exists/In/Any/All/Contains
- ios工程中加入.c/.cpp文件
- Android手动画柱状图的例子
- Java多线程(三) 多线程间的基本通信
- 10409 - Die Game
- Ubuntu下实现双屏独立切换
- [STM32F429-DISCO-uCosiii]3.uCOSIII 移植
- pycharm安装激活
- 修改flume源码,使其HTTPSource具备访问路径功能
- AS使用自带虚拟机报错解决
- #19 re&;jieba模块
- Spring(1)_Bean初始化_逻辑图
- 捷信达会员管理系统SQL语句相关
- Velocity常用语法详解
- Websphere安装配置与项目部署
- 了解SAGA
- C#管理windows服务
- conda
- 【OpenCV】【MFC】图片、视频、摄像头输入响应【详细图解】
- 20155311 《Java程序设计》实验四 (Android程序设计)实验报告