day8网络编程,面向对象1
一.只是回顾
1.导入模块的顺序,首先从当前目录下找,再从环境变量里面找,使用"sys.path.insert(0,'需要导入的环境变量')"加入需要导入文件的环境变量;
2.如果不同项目中有相同的文件,需要导入文件,需要将非当前项目中右键添加的环境变量取消,将当前的环境变量添加上去;
3.加盐:将密码和随机字符串和用户名等相关信息用MD5加密
二.网络编程
1.导入urllib.request的urlopen,发送get请求

2.发送post请求,需要导入urllibe.parse中的urlencode,主要添加数据data,要将数据转为k-v形式后在转为二进制

3.导入requests,发送请求较方便,简单,
3.1发送get请求

3.2发送post请求

3.3 入参为json格式的

3.4参数中需要传入cookie时,参数中要加上 s

3.5参数中需要传herder时.注意参数中要加上 s

3.6返回不是json时

3.7下载一首歌,把结果使用MP3的格式保存到本地

3.8,下载如果请求是https需要加上(verify= False)

3.9,上传文件,注意文件路径,如果是当前目录则不需要写路径,打开需要用(rb),发送的请求中要用files=打开的文件(files= data)

四.网络爬取qq群里的信息
1.进入(qun.qq.com)选择一个群,通过抓包能获取发送的data,cookie,通过postman模拟请求,发现返回值格式(json)和数量(gc,st,end,sort,bkn)
2.注意拼接路径,容易出错

五.异常处理,使用try进行判断,try后接判断后接except Exception as e:语句中输入出错误提示信息,其次在加上正常的执行结果,在最后加上finally:后面接的语句体不论是否出现异常都执行

六.类
1.用(class 类名)来定义一个类如(class Person),类名一般以大写字母开头,加入初始化内容(def __init__(self)),然后在定义其方法,调用时首先要实例化类,创建一个指挥者,类名加上括号(person_ong = Person()),然后指挥者就可调用类中的方法,初始化内容,和修改初始化内容

2.类在实例化的时候是否要传参数,关键看构造函数是否需要传参数

3.封装操作,封装redis

封装MySQL,封装内容分为五部分,分别为初始化def__init__(xxxx,xxxx....),查询全部def select_all(),查询一行def select_one(),其他SQL语句def other(),关闭数据库链接def close().知识点,系统主动抛出异常,可在try中加上(raise Exception('提示内容'))


类变量:直接定义在类中的变量,一般是较少变动的值,调用的时候可以直接在外部修改类变量的值

day8网络编程,面向对象1的更多相关文章
- Day8 - Python网络编程 Socket编程
Python之路,Day8 - Socket编程进阶 本节内容: Socket语法及相关 SocketServer实现多并发 Socket语法及相关 socket概念 socket本质上就是在2台 ...
- Java面向对象 网络编程 下
Java面向对象 网络编程 下 知识概要: (1)Tcp 练习 (2)客户端向服务端上传一个图片. (3) 请求登陆 (4)url 需求:上传图片. 客户端: ...
- Java面向对象 网络编程 上
Java面向对象 网络编程 上 知识概要: (1)网络模型 (2)网络通讯要素 (3)UDP TCP 概念 (4)Socket (5)UDP TCP 传输 ...
- Python面向对象进阶和socket网络编程-day08
写在前面 上课第八天,打卡: 为什么坚持?想一想当初: 一.面向对象进阶 - 1.反射补充 - 通过字符串去操作一个对象的属性,称之为反射: - 示例1: class Chinese: def __i ...
- python自动化开发-[第八天]-面向对象高级篇与网络编程
今日概要: 一.面向对象进阶 1.isinstance(obj,cls)和issubclass(sub,super) 2.__setattr__,__getattr__,__delattr__ 3.二 ...
- 第三模块:面向对象&网络编程基础 第2章 网络编程
01-计算机基础 02-什么是网络 03-五层协议详解 04-传输层详解 05-什么是Socket 06-基于socket实现简单套接字通信 07-在简单套接字基础上加上通信循环 08-客户端与服务端 ...
- 第八篇:python基础_8 面向对象与网络编程
本篇内容 接口与归一化设计 多态与多态性 封装 面向对象高级 异常处理 网络编程 一. 接口与归一化设计 1.定义 (1)归一化让使用者无需关心对象的类是什么,只需要知道这些对象都具备某些功能就可以了 ...
- Python面向对象进阶和socket网络编程
写在前面 为什么坚持?想一想当初: 一.面向对象进阶 - 1.反射补充 - 通过字符串去操作一个对象的属性,称之为反射: - 示例1: class Chinese: def __init__(self ...
- Python-socket网络编程-Day8
目录Day8-Python socket 11.Socket 11.1.socket和file的区别: 11.2.WEB服务应用: 21.3.更多功能 21.4.socket方法: 41.5. 服务端 ...
随机推荐
- .NET C# 创建WebService服务简单的例子
Web service是一个基于可编程的web的应用程序,用于开发分布式的互操作的应用程序,也是一种web服务 WebService的特性有以下几点: 1.使用XML(标准通用标记语言)来作为数据交互 ...
- EF Core Migration
//添加migrations dotnet ef migrations add [名称] //根据model更新sql表结构 dotnet ef database update //删除最新的migr ...
- FormsAuthenticationTicket
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- [转] Web前端开发工程师常用技术网站整理
1.常用工具相关 有道云笔记 http://note.youdao.com/signIn/index.html 36镇-最好用的共享收藏夹 http://www.36zhen.com/ 浏览器同步测试 ...
- [转] 合理使用npm version与npm dist-tag详解
第一步:发布第一个稳定版本 npm publish//1.0.0 第二步:修改文件继续发布第二个版本 git add -A && git commit -m "c" ...
- WebAPI——自动生成帮助文档
Web Api 自动生成帮助文档 新建Web Api项目之后,会在首页有API的导航菜单,点击即可看到API帮助文档,不过很遗憾,Description 是没有内容的. 怎么办呢? 第一步: 如果 ...
- MySQL 5.7 模式(SQL_MODE)详细说明 转
5.7 默认模式: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION ...
- 【转】android:paddingLeft与android:layout_marginLeft的区别
http://www.blogjava.net/anchor110/articles/342206.html 当按钮分别设置以上两个属性时,得到的效果是不一样的. android:paddingLef ...
- 分享一段奇葩的DBMS_JOB书写经历
declare JOB_ILEARN_ONLINE number :=1; begin dbms_job.submit(JOB_ILEARN_ONLINE,'clear_product;',sysda ...
- elementui异步后台校验表单,修改重复校验
elementui简单的form校验这里就不介绍了,这里主要记录下如何通过后台进行指定字段的异步后台校验. 1.导入axios <script src="https://unpkg.c ...