自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 python爬虫复习笔记

python爬虫笔记

2022-09-10 13:23:13 500

原创 Python爬虫_线程池实例——北京新发地菜价

Python爬虫_线程池实例——北京新发地菜价:通过线程池来同时爬取多页数据,从而提高爬取速度。

2022-09-03 22:28:59 862

原创 视频网站工作原理

用户上转:->转码(2k,1080p,720p…)->切片处理(把单个文件进行拆分)->文件记录(m3u8):①视频播放顺序②视频存放地址m3u8文件详解

2022-09-03 12:50:39 219

原创 九九乘法表

实现方式:1 while循环:代码示例:# 重复打印9⾏表达式j = 1while j <= 9: # 打印⼀⾏⾥⾯的表达式 a * b = a*b i = 1 while i <= j: print(f'{i}*{j}={j*i}', end='\t') i += 1 print() j += 12 for循环代码示例:for i in range(1,10): for j in range(1

2022-04-09 11:26:49 455

原创 静态Web服务器-命令行启动动态绑定端口号

1. 开发命令行启动动态绑定端口号的静态web服务器实现步骤:获取执行python程序的终端命令行参数 判断参数的类型,设置端口号必须是整型 给Web服务器类的初始化方法添加一个端口号参数,用于绑定端口号2.import socketimport sysimport threading# Web服务器类class Httpwebserver(object): def __init__(self, port): # 创建服务端套接字 tcp

2022-04-05 15:27:39 95

原创 静态Web服务器-面向对象开发

1. 以面向对象的方式开发静态Web服务器实现步骤:把提供服务的Web服务器抽象成一个类(HTTPWebServer) 提供Web服务器的初始化方法,在初始化方法里面创建socket对象 提供一个开启Web服务器的方法,让Web服务器处理客户端请求操作。import socketimport threading# 定义Web服务器类class Httpwebserver(object): def __init__(self): # 创建服务端套接字

2022-04-05 15:23:26 65

原创 静态Web服务器-返回指定页面数据

import socketdef main(): # 创建服务端套接字 tcp_server_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 设置端口号复用 tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True) # 绑定端口 tcp_server_socket.bind(('', 9000).

2022-04-05 15:17:45 89

原创 多任务Tpc服务端开发:实现同时服务于多个tpc客户端

步骤:编写一个TCP服务端程序,循环等待接受客户端的连接请求 当客户端和服务端建立连接成功,创建子线程,使用子线程专门处理客户端的请求,防止主线程阻塞 把创建的子线程设置成为守护主线程,防止主线程无法退出。 import socketimport threading# 处理客户端的请求操作函数def handle_client_request(ip_port, new_client): # 循环接收客户端发送的数据 while True: # 5.接受客户端

2022-03-31 11:50:09 205

原创 简单tpc服务端程序开发

import socket# 1.创建服务端套接字tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 设置端口号复用的代码:# 参数1: 表示当前套接字# 参数2: 设置端口号复用选项# 参数3: 设置端口号复用选项对应的值tcp_server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)# 2.绑定端口号tcp_s.

2022-03-31 11:40:28 180

原创 互斥锁: 对共享数据进行锁定,保证同一时刻只能有一个线程去操作。

import threadingimport time# 定义全局变量g_num = 0# 创建全局互斥锁mutex = threading.Lock()# 循环一次给全局变量加1def task1(): # 上锁 mutex.acquire() for i in range(10000): global g_num g_num += 1 print("1_num:", g_num) # 释放锁 mutex..

2022-03-31 09:30:10 489

原创 多线程的使用

类似多进程代码如下:# 1.导入包import threadingimport time# 2.定义线程任务# 唱歌任务def sing(): # 扩展: 获取当前线程 # print("sing当前执行的线程为:", threading.current_thread()) for i in range(3): print("正在唱歌...%d" % i) time.sleep(1)# 跳舞任务def dance():

2022-03-30 23:31:50 67

原创 强制结束主进程:​1.设置守护主进程方式: 子进程对象.daemon = True,2.销毁子进程方式: 子进程对象.terminate()

import multiprocessingimport time# 定义进程所需要执行的任务def task(): while True: print('正在执行中.......') time.sleep(0.1)#if __name__ == '__main__': # 创建子进程 task_process = multiprocessing.Process(target=task) # 设置守护主进程,主进程退出子进程直接销.

2022-03-30 23:27:41 354

原创 01-多进程的简单使用

import multiprocessingimport time# 跳舞任务def dance(): for i in range(5): print("跳舞中...") time.sleep(0.2)# 唱歌任务def sing(): for i in range(5): print("唱歌中...") time.sleep(0.2)if __name__ == '__main__': # 创建.

2022-03-30 23:18:59 53

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除