day_6.6 py
Tftp 下载器演示 2018-6-6 14:11:09


#!/usr/bin/env python
#!--*--coding:utf-8 --*--
#!@Time :2018/6/6 11:55
#!@Author TrueNewBee
'''
Tftp 下载器演示 04 关于架构
1. c/s 架构 服务端和客户端
2. b/s 用浏览器打开的 2018-6-6 17:24:29
由于demo的视频黑屏无法看,跳过这节
进行下一节 web服务器
'''
#Tftp 的test
from socket import *
import struct
#发送一个数据
#!H 是占用两个字符 8s是对应 test.jpg 8个字符,H是占空的,这是对应的规定
#上传数据
sendData = struct.pack("!H8sb5sb",1,"test.jpg",0,"octet",0) #创建一个套接字
#Tftp 默认端口是69
# udpSocket = socket(AF_INET,SOCK_DGRAM)
# udpSocket.send(sendData,("192.168.119.210",69))
# udpSocket.close() #套接字使用完就应该关闭
#下载数据
result = struct.unpack("!HH",recvData[:4])
print(result) udp广播
#!/usr/bin/env python
#!--*--coding:utf-8 --*--
#!@Time :2018/6/6 18:26
#!@Author TrueNewBee
'''
广播只能在udp中使用!! 一般情况下局域网收到数据,用广播
'''
import socket ,sys dest = ("<broadcast>",7788) #创建udp套接字
s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
#对这个需要发送广播数据的套接字进行修改设置,否则不能发送广播数据
#如果s套接字需要发送广播数据,那么久需要这句话
s.setsockopt(socket.SOL_SOCKET,socket.SO_BROADCAST,1) #一广播的形式发送数据到本网络的所有电脑中去
# 192.168.1.0------->>网络号
# 192.168.1.255------>>广播地址
s.sendto("hi",dest) print("等待对方回复(按ctrl+c退出)") while True:
(buf,address) = s.recvfrom(2048)
print("Received from %s:%s"%(address,buf))
day_6.6 py的更多相关文章
- day_6.8 py 网络编程
2018-6-8 18:20:30 OSI模型:就是七层物理层 ICMP 我ping你的时候要用,不仅要知道ip地址和网卡号mac地址 ARP 在我和你通讯前不知道的mac地址需要广播一下,当我说的 ...
- day_6.7 py tcp
2018-6-7 09:20:34 #!/usr/bin/env python #!--*--coding:utf-8 --*-- #!@Time :2018/6/7 9:54 #!@Author T ...
- day_6.5 py
Wireshark的使用 2018-6-5 20:16:05 明天学 03
- day_6.20动态加载py文件
__import__() 魔法方法! 关于动态网站打开的 代码流程!
- python调用py中rar的路径问题。
1.python调用py,在py中的os.getcwd()获取的不是py的路径,可以通过os.path.split(os.path.realpath(__file__))[0]来获取py的路径. 2. ...
- Python导入其他文件中的.py文件 即模块
import sys sys.path.append("路径") import .py文件
- import renumber.py in pymol
cp renumber.py /usr/local/lib/python2.7/dist-packages/pymol import renumber or run /path/to/renumber ...
- python gettitle.py
#!/usr/bin/env python # coding=utf-8 import threading import requests import Queue import sys import ...
- 解决 odoo.py: error: option --addons-path: The addons-path 'local-addons/' does not seem to a be a valid Addons Directory!
情况说明 odoo源文件路径-/odoo-dev/odoo/: 我的模块插件路径 ~/odoo-dev/local-addons/my-module 在my-module中创建了__init__.py ...
随机推荐
- SpringMVC+Thymeleaf +HTML的简单框架
一.问题 项目中需要公众号开发,移动端使用的是H5,但是如果不用前端框架的话,只能考虑JS前端用ajax解析JSON字符串了.今天我们就简单的说下前端框架Thymeleaf如何解决这个问题的: 二.开 ...
- C# Chart使用总结 2 ----属性
默认显示如图所示,Series的名称显示在右边,它会将下方空间挤掉,使图表只能显示在左侧,而右侧大部分地方都是空白的.当图很宽的时候看着会很不舒服. 可以设置Legends 集合中的Docking ...
- everything结果出现文件找不到
点击“工具”——“选项”——“索引”——“强制重建”——“确定”, 然后重启everything即可.
- 用ctrl+鼠标滚动调节字体大小
如此设置之后,按住ctrl+鼠标滚动,可以放大和变小代码的字号.
- 鼠标滑过GridView的数据行时修改行的背景颜色
基本原理可以参考另一篇文章:鼠标滑过table时修改表格行的背景颜色 下面是针对GridView实现该效果的代码:就是编写GridView控件的RowDataBound事件的代码. protected ...
- JAVA JSON解析:类XPATH解析JSON
目前JAVA解析JSON的方式有很多种,json-lib啊,GJSON啊,等等都可以解析,但通常是将JSON转换为对象或者是LIST或者是MAP,对于我们测试人员来说,其实我们并不需要里面的全部信息, ...
- maven打包含有多个main程序的jar包及运行方式
pom.xml <build> <plugins> <plugin> <groupId> ...
- OpenCV 学习笔记 06 SIFT使用中出现版权问题error: (-213:The function/feature is not implemented)
1 错误原因 1.1 报错全部信息: cv2.error: OpenCV(4.0.1) D:\Build\OpenCV\opencv_contrib-4.0.1\modules\xfeatures2d ...
- Effective Java 第三版——50. 必要时进行防御性拷贝
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
- 基于Tcp协议的简单Socket通信实例(JAVA)
好久没写博客了,前段时间忙于做项目,耽误了些时间,今天开始继续写起~ 今天来讲下关于Socket通信的简单应用,关于什么是Socket以及一些网络编程的基础,这里就不提了,只记录最简单易懂实用的东西. ...