网络基础与FTP准备
一网络基础
1.端口:
端口是为了将同一台电脑上的不同程序进行隔离
(IP是在找电脑,端口是在找电脑上的程序)
实例:
MySQL是一个软件,帮助我们在硬盘上进行操作,默认端口是3306
Redis是一个软件,帮助我们在内存里进行数据操作,默认端口:6379
网站默认端口:80,访问时:http://www.baidu.com:80 (前面是http)
:443,访问时:https://www.baidu.com:443 (前面是https)
范围:
一共:1-65535
内置:1-1024
一般情况:8000,8001... 2.OSI:七层模型
七层:
应用层 使用的软件
表示层 看到的数据(如图片和视频)
会话层 保持登录或链接状态 应用偷偷携带一点其他数据:令牌 19rRNAwf8GVe6xyT9kJPIu5SlQc
传输层 TCP/UDP [TCP][基础数据|令牌]
网络层 IP [IP][TCP][基础数据|令牌]
数据链路层 MAC [MAC][IP][TCP][基础数据|令牌]
物理层 将数据转换成电信号发送(01010101010101)
五层:
应用层
应用层 表示层
会话层
传输层
网络层
数据链路层
物理层
四层:
应用层
应用层 表示层
会话层
传输层
网络层
物理层 数据链路层
物理层 3.三次握手四次挥手
客户端向服务端发起连接请求:三次握手
client.connent()
客户端 服务端
我能连接你吗
好的
我来了
client.connect()
客户端和服务端断开连接:四次挥手
client.close() 或 conn.close()
客户端 服务端
我要跟你断开连接
断开吧,等我处理一下
...
处理完了,断开吧
拜拜
4.断开连接时会抛异常(Windows)或发送一个空的字符串(Linux或max) 二.FTP准备
1.\r
print('\r80%',end=' ') #\r的意思是跳到当前行的最前面,并且会覆盖后面的内容
print('\r90%',end=' ') 2.%%
tpl='进度条目前是%s%%' % 90
print(tpl) 3.进度条
import time
def func(size,total_size):
val=int(size/total_size*100)
print('\r%s%%|' % val+'#'*int(size/3),end=' ')
time.sleep(0.1)
for i in range(1,101):
func(i,100) 4.计算文件字节大小
import os
size=os.stat(r'C:\Users\Administrator\PycharmProjects\untitled3\test1.py').st_size
print(size)
size1=os.path.getsize(r'C:\Users\Administrator\PycharmProjects\untitled3\test1.py')
print(size1) 5.打印表情
print('\ue409') 6.send还是sendall
推荐sendall,发的全 7.自定义协议:
自己觉得定义一个对象可以简化代码,就可以自定义一个协议 8.状态码
在某个地方定义好
{'1001':'上传文件','1002':'下载文件'}
也可以是其他类型 9.把字符串转换成字节
如果不存在中文的话,可以在前面加一个b来快速转换
网络基础与FTP准备的更多相关文章
- 网络基础、ftp任务(进度条、计算文件大小、断点续传、搭建框架示例)
一.网络基础 1.端口,是什么?为什么要有端口? 端口是为了将同一个电脑上的不同程序进行隔离. IP是找电脑:端口是找电脑上的应用程序: 端口范围:1 – 65535 : 1 - 1024 不要 ...
- 网络基础四 DNS DHCP 路由 FTP
第1章 网络基础 1.1 IP地址分类 IP地址的类别-按IP地址数值范围划分 IP地址的类别-按IP地址用途分类 IP地址的类别-按网络通信方式划分 1.2 局域网上网原理过程 DHCP原理过程详情 ...
- 网络基础、多线程、ftp任务铺垫
一.网络基础 学习网络编程,了解一些网络基础的知识是必不可少的,下面学习一些基础的网络知识: 1.我们的电脑里有网卡,网卡里有mac地址: 2.我到某个地方插上网线,路由器或交换机中的DHCP服务为我 ...
- 前端学HTTP之网络基础
× 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...
- 网络基础知识、ASP.NET 核心知识(1)*
为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...
- Java 网络编程(一) 网络基础知识
链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951826.html 网络基础知识 网络编程的目的:直接或间接地通过网络协议与其他计算机 ...
- http(一)web和网络基础
深入学习http不为别的,只为补充底层知识,打好根基,深入了解其他技术,擒贼先擒王,学好九阳神功以后,乾坤大挪移,太极剑就容易了,急于求成,就只能变周芷若.走着...... 来源于:图解HTTP 1. ...
- 了解web及网络基础
了解web及网络基础 以下内容简单的说明了一下TCP/IP协议族中HTTP协议.DNS服务.IP协议的一些概念和关系.笔者只是对知识点进行了总结,仅供参考: ) 转载请注明出处:了解web及网络基础 ...
- 异常处理与网络基础中的tcp,udp协议
# 异常处理: # 什么是异常?异常和错误的区别 # Error 语法错误 比较明显的错误 在编译代码阶段就能检测出来 # Iteration 异常 在执行代码的过程中引发的异常 # 异常发生之后的效 ...
随机推荐
- C#依赖注入控制反转IOC实现详解
原文:C#依赖注入控制反转IOC实现详解 IOC的基本概念是:不创建对象,但是描述创建它们的方式.在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务.容器负责将这些联系在一起. ...
- spring集成Quartz时区问题造成任务晚执行八小时
项目中在Spring中集成了Quartz,配置的每日凌晨执行的定时任务都是到了八点多才执行,经过一番查找,可能是时区问题造成的. 一种解决办法是在JVM启动参数中增加 --Duser.timezone ...
- 解决mysql连接异常—-com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
DBCP连接池连接MySql数据库时,一奇葩数据库设置为30秒内无请求自动断开.超时后链接无法关闭,活动链接数飞奔,最后挂掉. 网上找了一圈,一般是这三种,方法一pass,方法二测试无效可能设置错了吧 ...
- 获取当前div中的所有div的个数和每一个div的ID and 根据屏幕分辨率计算高度
var tabs_Count=document.getElementById("tabs-panels").getElementsByTagName("div" ...
- windows 路径
windows下的路径分隔符是\,而不是/ hosts文件的位置:C:\Windows\system32\drivers\etc 安卓(Android)用户:Android手机hosts文件路径:/s ...
- ubuntu 12.04 简单配置samba服务,实现主机与虚拟机互通(设置Windows虚拟盘)
环境: virtualbox ubuntu12.04 首先,如果你到这步了,说明你的window与linux的网络已经配好了,他们之间是可以互相Ping通的,如果没有,请看我以前的文章 由于我linu ...
- Python实现多线程下载
#!/usr/bin/python # -*- coding: utf-8 -*- # filename: paxel.py '''It is a multi-thread downloading t ...
- PMP项目经理认证
PMP认证是由美国项目管理学会(PMI)在全球范围内推出的针对项目经理的资格认证体系,通过该认证的项目经理叫"PMP",即Project Management Profession ...
- Windows系统时间(FILETIME和SYSTEMTIME)
转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8654298 欢迎关注微博:http://weibo.com/MoreWi ...
- ios 双指捏合放大缩小图片的例子
图片跟随双指捏合的距离放大或者缩小. 利用-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 实现. touchesMov ...