广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python实现二次元图片展示(屏保)
  • 343
分享到

python实现二次元图片展示(屏保)

2024-04-02 19:04:59 343人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

下面实现内容: 程序的端口是https://www.dmoe.cc/random.PHP,也是这位谪仙人给的。需要一个参数:return=JSON。说明文档见:Https://www

下面实现内容:

程序的端口是https://www.dmoe.cc/random.PHP,也是这位谪仙人给的。需要一个参数:return=JSON。说明文档见:Https://www.dmoe.cc/random.php

卷 Data 的文件夹 PATH 列表
卷序列号为 90AF-CB35
D:.
│  图片展示.py

└─temp

直接敲程序,还需要一个名为temp的文件夹。
请提前安装requestspygame模块。

首先放出备用程序:

from requests import get
from json import dumps
from random import randint
import pygame
from pygame.locals import * 

url = 'https://www.dmoe.cc/random.php'
params = {'return':'json'}
response = get(url,params).json()
width,height,img = int(response['width']),int(response['height']),response['imgurl']

content = get(img)
number = randint(100000,999999)
with open('temp/%d.jpg' % number,'wb') as f:
    f.write(content.content)

pygame.init()
canvas = pygame.display.set_mode((width,height))
canvas.fill((255,255,255))
pygame.display.set_caption('Show')

def handle():
    for event in pygame.event.get():
        if event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE):
            pygame.quit()
            exit()
    
background = pygame.image.load('temp/%d.jpg' % number)    
while True:
    canvas.blit(background,(0,0))
    handle()
    pygame.display.update()

Okay,这里就不展示了,就是一个简单的屏保效果,关闭请ESC键。

再放出真实程序:

小歪apihttps://api.ixiaowai.cn/api/api.php,直接发get请求即可,可以用Postman/APIfox调试。

from requests import get
from json import dumps
from random import randint
import pygame
from pygame.locals import * 

content = get('https://api.ixiaowai.cn/api/api.php')
number = randint(100000,999999)
with open('temp/%d.jpg' % number,'wb') as f:
    f.write(content.content)

pygame.init()
canvas = pygame.display.set_mode((1920,1080))
canvas.fill((255,255,255))
pygame.display.set_caption('Show')

def handle():
    for event in pygame.event.get():
        if event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE):
            pygame.quit()
            exit()
    
background = pygame.image.load('temp/%d.jpg' % number)    
while True:
    canvas.blit(background,(0,0))
    handle()
    pygame.display.update()

更新:

想要会变化的?这里:

from requests import get
from json import dumps
from random import randint
import pygame
from pygame.locals import * 

#创建pygame窗口
pygame.init()
canvas = pygame.display.set_mode((1920,1080))
canvas.fill((255,255,255))
pygame.display.set_caption('Show')

#事件处理
def handle():
    for event in pygame.event.get():
        if event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE):
            pygame.quit()
            exit()
      
while True:
    #下载图片
    content = get('https://api.ixiaowai.cn/api/api.php')
    number = randint(100000,999999)
    with open('temp/%d.jpg' % number,'wb') as f:
        f.write(content.content)
    #装填图片
    background = pygame.image.load('temp/%d.jpg' % number)  
    canvas.blit(background,(0,0))
    #设置窗口
    handle()
    pygame.display.update()
    pygame.time.delay(5000) #秒数是多少,就写几千秒,这是五秒一换

图片下载器:

from requests import get  # get请求方法
from json import dumps  # json序列处理
from random import randint  # 随机数
from os.path import exists  # 检测文件夹是否存在
from os import mkdir  # 创建文件夹

# 下载的爬虫
def download(path):
    url = "https://api.ixiaowai.cn/api/api.php"  # 请求URL
    content = get(url)  # 发送网络请求
    number = randint(100000, 999999)  # 生成随机数
    print("保存图片 >>> ./%s/%d.jpg" % (path, number))  # 输出保存信息
    with open("%s/%d.jpg" % (path, number), "wb") as f:  # 保存图片信息
        f.write(content.content)

# 主函数
def main(path):
    # 下载
    for i in range(1, int(input("您需要多少张图片 >>> ")) + 1):
        download(path)
    # 保留解释器窗口
    input("下载完成。")

# 保存路径的程序
if __name__ == "__main__":
    try:  # 包含异常
        folder = input("您需要将图片保存到哪里(输入相对路径) >>> ")
        if exists(folder):  # 有这个文件夹就直接保存
            main(folder)  # 下载
        else:  # 如果没有这个文件夹
            mkdir(folder)  # 创建文件夹
            main(folder)  # 下载
    except Exception as e:  # 提取异常基类
        print("ERROR:%s" % e)  # 输出异常

到此这篇关于python实现二次元图片展示(屏保)的文章就介绍到这了,更多相关Python实现二次元图片展示内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python实现二次元图片展示(屏保)

本文链接: https://www.lsjlt.com/news/138193.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python实现二次元图片展示(屏保)
    下面实现内容: 程序的端口是https://www.dmoe.cc/random.php,也是这位谪仙人给的。需要一个参数:return=json。说明文档见:https://www...
    99+
    2022-11-13
  • 小程序如何实现全屏展示图片
    这篇文章主要介绍“小程序如何实现全屏展示图片”,在日常操作中,相信很多人在小程序如何实现全屏展示图片问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”小程序如何实现全屏展示图片”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-26
  • Python编程实现数学运算求一元二次方程的实根算法示例
    本文实例讲述了Python编程实现数学运算求一元二次方程的实根算法。分享给大家供大家参考,具体如下: 问题: 请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:ax&sup...
    99+
    2022-06-04
    实根 示例 算法
  • django将图片保存到mysql数据库并展示在前端页面的实现
    小编使用python中的django框架来完成! 1,首先用pycharm创建django项目并配置相关环境 这里小编默认项目都会创建 settings.py中要修改的两处配置 ...
    99+
    2022-11-12
  • 将图片保存到mysql数据库并展示在前端页面的实现代码
    目录1,首先用pycharm创建django项目并配置相关环境2,创建表3,上传图片功能4,展示图片功能5,删除图片功能小编使用python中的django框架来完成! 1,首先用p...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作