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. 服务端 ...
随机推荐
- 【第一部分】07Leetcode刷题
二.寻找旋转排序数组中的最小值 题目:153. Find Minimum in Rotated Sorted Array C++ Soution 1: class Solution { public: ...
- thinkphp5.0和thinkphp3.2的区别不同之处
先看目录结构: thinkphp 5.0的目录结构, 文档:https://www.kancloud.cn/manual/thinkphp5/118008 project 应用部署目录 ├─appli ...
- StackService.Redis 应用
如今StackService.Redis已经转向商业版本.4.0以下的低版本依然免费和开源. 吴双,Redis系列命令拾遗分享 http://www.cnblogs.com/tdws/tag/NoSq ...
- POJ 1364 / HDU 3666 【差分约束-SPFA】
POJ 1364 题解:最短路式子:d[v]<=d[u]+w 式子1:sum[a+b+1]−sum[a]>c — sum[a]<=sum[a+b+1]−c−1 ...
- Java基础知识➣集合整理(三)
概述 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个层次. 实现(类) ...
- UICollectionViewController的用法1
UICollectionView 和 UICollectionViewController 类是iOS6 新引进的API,用于展示集合视图,布局更加灵活,可实现多列布局,用法类似于UITableVie ...
- 一起学Hive——总结各种Join连接的用法
Hive支持常用的SQL join语句,例如内连接.左外连接.右外连接以及HiVe独有的map端连接.其中map端连接是用于优化Hive连接查询的一个重要技巧. 在介绍各种连接之前,先准备好表和数据. ...
- 远程连接mongodb服务器
- LVM分区无损增减
http://www.361way.com/change-lvm-size/1792.html
- Codeforces 1017F The Neutral Zone (看题解)
这题一看就筛质数就好啦, 可是这怎么筛啊, 一看题解, 怎么会有这么骚的操作. #include<bits/stdc++.h> #define LL long long #define f ...