本页 12 篇文章
StarBloghttps://blog.deali.cn/blog/crawler-download-wechat-wallpapers
...件文档型NoSQL)、pony(关系型ORM)、tortoise-orm 最终选择了 tortoise-orm,原因是语法和Django ORM很像,不想走出舒适圈了。 模型定义 python from tortoise.models import Model from tortoise import fields class Article(Model): id = fiel...
StarBloghttps://blog.deali.cn/blog/django-full-text-search-haystack-whoosh-jieba
...Xapian*搜索引擎,不用更改代码,直接切换引擎,减少代码量。 搜索引擎使用Whoosh,这是一个由纯Python实现的全文搜索引擎,没有二进制文件等,比较小巧,配置比较简单,当然性能自然略低。 中文分词Jieba,由于**Whoosh**...
StarBloghttps://blog.deali.cn/blog/python-ffmpeg-video-split-merge
...理视频分割、合并,真的很香。 不过命令行用来处理一两个还行,如果是要处理多个视频,或者是服务端有视频处理的需求(如转码、加水印这类),就需要有一种方便的方法在代码里运用FFmpeg,于是本文打算介绍python和FFmpeg间的无缝接入调用~ ffmpy 首先FFmpeg是一个可执行文件,要在Python中调用FFmpeg并且监控它的状态,需要使用类似os.system()或者是subpro...
StarBloghttps://blog.deali.cn/blog/python-caching-mechanism-functools-lrucache
...操作,如果是同一份数据需要多次使用,每次都重新生成会大大浪费时间。所以,如果将计算或者远程请求等操作获得的数据缓存下来,会加快后续的数据获取需求。 先来一个简单的例子以了解缓存机制的概念: python -*- coding: utf-8 -*- import random import datetime class MyCache: """缓存类""" def __ini...
StarBloghttps://blog.deali.cn/blog/djangostarter-captcha-encapsulation
...时,也对「DjangoStarter」的验证码模块做一层封装,使其更方便使用~ 用哪个库好呢 Python之禅:人生苦短,不造轮子 ——鲁迅:我说的 我在「DjangoStarter」里选择的是dja...
StarBloghttps://blog.deali.cn/blog/recommender-system-surprise-basic-usage
首先是构建数据集 这里我使用了随机生成用户和项目,以及用户对项目的评价,喜欢(1)与不喜欢(0) python import random import pandas import numpy as np def build_dataframe() -> pandas.DataFrame: datasets = { 'userID': [], 'ite...
StarBloghttps://blog.deali.cn/blog/python-web-django-start-django-journey
前言 开源的Web框架Django简单易用,稳定性和灵活性高,因此被广泛应用于商业化环境,它充分利用了Python拥有丰富的库这一优势。 Django的安装和服务器的搭建 **安装Django库:** python pip install django **新建Web应用:** python django-admin startproject hello_djang...
StarBloghttps://blog.deali.cn/blog/python-web-django-settings-py-configuration
安装REST框架 python pip install djangorestframework pip install django-rest-swagger 安装了REST Framework之后,之前创建的Django App(hello_app)就可以使用REST API进行通信。 我们所有创建的App都要添加到INSTALLED_APPS这个字段里面。 pyth...
StarBloghttps://blog.deali.cn/blog/python-orm-sqlalchemy-tortoise-piccolo
...一种混乱、无秩序的感觉,这时候我想起来之前写文章分享过的 LiteStar… 作为一名在 Django 生态浸淫多年的开发者,我一直对 Django 那套全家桶方案心存敬畏:稳定、完善,几乎定义了 Python Web 开发的标准。但随着 Web 迈入异步(Async)时代,尤其是当最近深度体验了 **LiteStar** 这种追求极致架构与性能的框架后,我意识到是时候在一些 AI 相关的新项目上使用 Li...
StarBloghttps://blog.deali.cn/blog/how-to-elegantly-generate-unique-ids-django
...s](871cae033f29eb83.jpg) 实现这个功能有不少方法,本文简单记录一下。 不依赖第三方库 首先单纯基于 Django ORM 来实现这个功能 先定义一个模型 python from django.db import models class MyModel(models.Model): unique_code = models.CharField(max_l...
StarBloghttps://blog.deali.cn/blog/pdm-dependencies-docker-python-project
... 所以部署的时候 dockerfile 和 docker-compose 配置也得修改一下。 dockerfile 首先修改一下 dockerfile dockerfile ARG PYTHON_BASE=3.11 FROM python:$PYTHON_BASE 设置 python 环境变量 ENV PYTHONUNBUFFERED=1 禁用更新检查 ENV PDM_CHECK...
StarBloghttps://blog.deali.cn/blog/handwritten-core-values-encoder-python
...位,所以我们可以定义一种新的编码,以“价值观”组成的12进制编码~ 只需要把二进制的ASCII字符转换成12进制的“价值观”编码就可以了。 开始代码 搞清楚原理就可以开始写代码了,本文使用Python语言来实现(接下来可能会尝试一下其他语言的实现) 这里用到了Python的标准库binascii,用来处理ASCII编码,先import进来 ASCII转2进制可以用binascii标准库...