BOOTP实现 / BOOTP Implement目录BOOTP 的服务器建立过程BOOTP 的客户端建立过程 Note: 理论部分请参考文末相关阅读链接1 BOOTP 的服务器建立过程服务器建立步骤主要有:(1) 设定服务器IP,传送ip(offer_ip),服务端口68,客户端口67;(2) 建立send_socket/UDP,广播模式允许复用,绑定到服务器ip,客户端端口;(3) 建立主循环,建立recv_socket进行监听广播地址和客户端口;(4) Recv_socket进行广播接收,...
使用python中的websocket-client模块来做相关的接口测试import webclientdef creatWS(user,password):#生成ws链接的函数token = getToken(user,password)#调用系统的登录接口,获取tokenreturn"ws://url?token=%s"%token#生成ws链接def msgChat(user,password):#即时聊天消息websocket.enableTrace(True)#打开跟踪,查看日志strUrl= creatWS(user,password)ws = websocket.create_connection(strUrl)#创建链接data={json格式的数据...
一、互联网协议连接两台计算机之间的Internet实际上就是一系列统一的标准,这些标准称之为互联网协议,互联网的本质就是一系列网络协议。二 、为什么要有互联网协议互联网协议就相当于计算机界的英语。它的功能:定义计算机如何接入internet,以及接入internet的计算机通信的标准。三、tcp/ip五层模型互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层,这里仅讨论五层模型。用户感知的是最上面的应用层,越往下越靠近硬...
利用 Urllib 的 robotparser 模块我们可以实现网站 Robots 协议的分析,本节我们来简单了解一下它的用法。
1. Robots协议Robots 协议也被称作爬虫协议、机器人协议,它的全名叫做网络爬虫排除标准(Robots Exclusion Protocol),用来告诉爬虫和搜索引擎哪些页面可以抓取,哪些不可以抓取。它通常是一个叫做 robots.txt 的文本文件,放在网站的根目录下。当搜索爬虫访问一个站点时,它首先会检查下这个站点根目录下是否存在 robots...
一 互联网的本质咱们先不说互联网是如何通信的(发送数据,文件等),先用一个经典的例子,给大家说明什么是互联网通信。现在追溯到八九十年代,当时电话刚刚兴起,还没有手机的概念,只是有线电话,那么此时你要是给在外地的人打电话,你应该怎么做?首先你要确保你们两个的座机要有一堆连接介质连接(电话线,转换器等等)咱们统称物理连接介质。其次,你要拨号,锁定对方的电话。最后就开始通话了。通话是有学问的,当时那个年代还...
8.3 osi七层协议(五层协议)物理层---> 数据链路层(以太网协议(mac地址)) ---->网络层(IP协议) ----> 传输层(端口协议(TCP,UDP协议)) ---> 应用层:8.3.1 物理层一系列的物理连接介质:网线,光纤,电缆发送的数据就是01010101 比特数据流,这些数据连续不断的收发,拿到这些数据没用,不知道数据代表的意义,数据要进行分组(按照一定规则),数据分组这件事物理层做不了(是数据链路层做的)# 交换机:将一对电脑连接在一起交换机对照(网口与MAC...
一、迭代器协议定义: 迭代:是一个重复的过程,每一次重复,都是基于上一次的结果而来while True: #单纯的重复print(‘你瞅啥‘)l=[‘a‘,‘b‘,‘c‘,‘d‘]
count=0
while count < len(l):print(l[count])count+=1 迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前退)二、可迭代对象定义: 实现了迭代器协议的对象(...
斐波那契数列:后一个数为前两个数的和。由于要不断交换数字,要用的python的数字交换。a = 2
b = 5
print(b)
a, b = b, a + b
print(b)
a, b = b, a + b
print(b) 用迭代器来做。 class Test:def__init__(self, a, b):self.a = aself.b = bdef__iter__(self):return selfdef__next__(self):if self.b > 20:raise StopIterationself.a, self.b = self.b, self.a + self.breturn self.btest = Test(0, 1)
for i in test: # for 循...
1# udp_gb_server.py 2‘‘‘服务端(UDP协议局域网广播)‘‘‘ 3 4import socket5 6 s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)7 s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)8 9 PORT = 1060
1011 network = ‘<broadcast>‘12 s.sendto(‘Client broadcast message!‘.encode(‘utf-8‘), (network, PORT)) # udp_gb_client.py‘‘‘客户端(UDP协议局域网广播)‘‘‘import sockets = socket.socke...
网络协议 网络通信的基本要素物理介质网络协议OSI七层模型OSI五层应用层传输层 : TCP/UDP协议,传输层为每个需要联网的应用程序绑定了一个私人端口号(一个整数,最大65585)注意:0-1024是系统保留的端口,不要使用已经占用的端口(apache:8080,MySQL:3306,FTP:21) 网络层 : IP协议,子网掩码,IP与子网掩码进行AND运算,产生网络地址,如果网络地址一致,则表明在同一个子网络(局域网).IP协议包含路由协议,帮助找到局域网的网关. 数据链路层 ...
之前我在写百度网盘爬虫,百度图片爬虫的时候答应网友说,抽时间要把ok搜搜的的源码公开,如今是时候兑现诺言了,下面就是爬虫的所有代码,完全,彻底的公开,你会不会写程序都可以使用,不过请先装个linux系统,具备公网条件,然后运行: python startCrawler.py有必要提醒你,数据库字段代码中都有,请你自己建张表格,这个太简单了,就不多说了。同时我也提供一下下载地址,源码都在:下载地址1 下载地址2#!/usr/bin/env python...
【unix域套接口】 或 【本地套接口】,它用于位于同一台机器(操作系统)的进程间通信。它已经被纳入POSIX Operating Systems标准。它支持以下三种方式数据传输:(1) 可靠的字节流传输(SOCK_STREAM, 对应TCP);(2) 无序、不可靠的数据包传输(SOCK_DGRAM,对应UDP)。(3)有序、可靠的数据包传输(SOCK_SEQPACKET)原始套接字,普通的套接字无法处理ICMP、IGMP等网络报文,而SOCK_RAW可以;其次,SOCK_RAW也可以处理特殊的I...
开源的,地址在https://github.com/atupal/webqq 等有时间了写一个完整的cli qq客户端。 使用方法:python login_qq.py即可 代码如下: import urllib2 import httplib2 import re import random from encryption import QQmd5 import cookielib import requests import getpass import time import json import urllib class webqq: def __init__(self, user, pwd): self.cookies = cookielib.CookieJar() self.opener = urllib2....
开源的,地址在https://github.com/atupal/webqq 等有时间了写一个完整的cli qq客户端。 使用方法:python login_qq.py即可 代码如下:import urllib2 import httplib2 import re import random from encryption import QQmd5 import cookielib import requests import getpass import time import json import urllib class webqq: def __init__(self, user, pwd): self.cookies = cookielib.CookieJar() self.opener = urllib2.b...
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python源代码同样遵循 GPL(GNU General Public License)协议。GPL(GNU General Public License)(推荐学习:Python视频教程)GPL协议的主要内容是只要在一个软件中使用(“使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的”传染性”。GPL协议的产品作为一个单独的产品使用没有任何...