zoukankan      html  css  js  c++  java
  • 网络基础与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.
    print(' 80%',end=' ') # 的意思是跳到当前行的最前面,并且会覆盖后面的内容
    print(' 90%',end=' ')

    2.%%
    tpl='进度条目前是%s%%' % 90
    print(tpl)

    3.进度条
    import time
    def func(size,total_size):
    val=int(size/total_size*100)
    print(' %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:UsersAdministratorPycharmProjectsuntitled3 est1.py').st_size
    print(size)
    size1=os.path.getsize(r'C:UsersAdministratorPycharmProjectsuntitled3 est1.py')
    print(size1)

    5.打印表情
    print('ue409')

    6.send还是sendall
    推荐sendall,发的全

    7.自定义协议:
    自己觉得定义一个对象可以简化代码,就可以自定义一个协议


    8.状态码
    在某个地方定义好
    {'1001':'上传文件','1002':'下载文件'}
    也可以是其他类型

    9.把字符串转换成字节
    如果不存在中文的话,可以在前面加一个b来快速转换
  • 相关阅读:
    Fiddler无法抓取HTTPS的问题,Fiddler证书无法安装终极解决方案,
    锤子手机做appium自动化测试时,运行脚本总是弹出警告框的问题
    jmeter4+win10+jdk1.8环境下,jmeter输入中文就卡死的问题
    jenkins构建邮件自动发送,测试邮件发送成功,构建项目邮件发送不成功的问题
    Jenkins安装部署
    Appium中wait_activity的使用以及XPATH定位
    Appium连接夜神模拟器,模拟手势点击(tap)
    Appium如何查看webview上元素
    Appium启动淘宝APP,输入搜索内容
    Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException: Remote object doesn't
  • 原文地址:https://www.cnblogs.com/shanghongyun/p/9607526.html
Copyright © 2011-2022 走看看