Python 创建简单cgi web服务器


编写简单web服务器创建一个cgi服务器,名为http_server.py:from http.server import HTTPServer, CGIHTTPRequestHandlerPORT = 8000with HTTPServer(("", PORT), CGIHTTPRequestHandler) as httpd: print("serving

Python 的 f-strings


使用变量名f-string用大括号 {} 表示被替换字段,其中直接填入替换内容:>>> name = 'Eric'>>> f'Hello, my name is {name}''Hello, my name is Eric'>>> number = 7>>> f'My l

python 之 httpx 模块


快速开始首先,首先导入 HTTPX:>>> import httpx现在,让我们尝试获取一个网页。>>> r = httpx.get('https://httpbin.org/get')>>> r<Response[200 OK]>同样,发出HTTP POST请求:>>> r = httpx.pos

python 之 pipreqs 生成当前项目依赖的包


pipreqs可以帮你找到当前项目的所有组件及其版本。就是当别人给你一个程序的时候,你要在自己电脑上运行起来,就需要安装程序所依赖的组件。安装pip3 install pipreqs使用方法在项目根目录下执行命令pipreqs ./ # 报错就执行下面这条pipreqs ./ --encoding=utf-8可以看到当前目录下会生成一个requirements.txt文件执行下面代码就会把项目用

asyncio 概念和用法


声明:本文针对的是python3.4以后的版本的,因为从3.4开始才引入asyncio,后面的3.5 3.6 3.7版本是向前兼容的,只不过语法上面有稍微的改变。比如在3.4版本中使用@asyncio.coroutine装饰器和yield from语句,但是在3.5以后的版本中使用async、await两个关键字代替,虽然语法上稍微有所差异,但是原理是一样的。本文用最通俗的语言解释了python

Python Docker 镜像的选择


问题:Python Docker 镜像的种类比较多,以3.6.15版本为例就有10个选择。那具体应该如何选?版本区别:通过python Tags | Docker Hub查看信息,整理后如下表(以linux/386系统为例):TAGOS/ARCHCOMPRESSED SIZEpython:3.6.15-slim-busterlinux/38640.89 MBpython:3.6.15-slim-b

Python的hasattr() getattr() setattr() 函数用法


hasattr()hasattr() 函数用来判断某个类实例对象是否包含指定名称的属性或方法。该函数的语法格式如下:hasattr(obj, name)其中 obj 指的是某个类的实例对象,name 表示指定的属性名或方法名,返回BOOL值,有name属性返回True, 否则返回False。例子:class demo: def __init__ (self): self.nam

yaml格式的字符串多行


yaml 文件中多行字符串可以使用|保留换行符,或者使用>将换行符替换为空格。其中,这两个换行符有以下几种用法:|:文中自动换行,默认仅保留一行空行|+:文中自动换行,保留字符串后面所有的空行|-:文中自动换行,删除字符串后面所有的空行>:文中不自动换行,默认仅保留一行空行>+:文中不自动换行,保留字符串后面所有的空行>-:文中不自动换行,删除字符串后面所有的空行多行字符串

搭建 adslproxy 代理池


adslproxy 代理池原理:本文采用 redis 做代理IP的存储。存储代理IP前,先使用 adslproxy 做重新拨号和代理IP可用性校验,可用后再保存到 redis 里。在进行重新拨号前,先删除这个原来保存的代理 IP,然后再重新进行拨号操作。然后使用的 adslproxy 搭建一个提取代理 IP 的工具,通过一个 web 接口给客户端使用的时候。客户端用的时候,直接读取这个 web 接

用 python:alpine 应用容器制作 selenium+chromium 的 docker 镜像,并设置中文支持


部署使用 python:3.8.8-alpine3.13 的应用镜像,制作 selenium+chromium 的 docker 镜像,并设置中文支持。DockerFile 内容如下:FROM python:3.8.8-alpine3.13 AS buildRUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc

python elasticsearch 提示 ‘update‘ API and will be removed


环境:Elasticsearch 版本:7.10.1elasticsearch-analysis-ik 版本:7.10.1Elasticsearch 操作的 Python 库版本:7.16.1问题:python 的 elasticsearch 模块在执行 update、search、index 等方法的时候 提示:提示 DeprecationWarning: The ‘body’ paramete