【python】7个随机二次元图片api接口汇总(附网页调用示例)(转载)
本文发布于 375 天前,最后更新于375天前,其中的信息可能已经有所发展或是发生改变,如有需要,请联系我([email protected])进行更新吖~

1. 韩小韩API

1.1. 接口文档

https://api.vvhan.com/dongman.html

1.2. 请求地址

https://api.vvhan.com/api/acgimg

1.3. 请求方式

get

1.4. 请求参数

字段 类型 描述
return str 响应数据格式,可选json

1.5. 示例代码

import json, requests
url = 'https://api.vvhan.com/api/acgimg'
params = {'type': 'json'}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))

1.6. 响应数据

{
  "success": true,
  "imgurl": "https://cdn.jsdelivr.net/gh/uxiaohan/GitImgTypecho/Acg/api.vvhan.com[337].jpg",
  "info": {
    "width": 1920,
    "height": 1080,
    "type": "img"
  }
}

1.7. 图片预览

1.8. 温馨提示

调用多次发现,该接口返回的图片尺寸大多是1920x1800,且图片url地址中只有最后[ ]里面的数值在变化,截止目前该变化范围是0-696,也就是该接口是从697张二次元图片中随机返回一张。如果你想下载该接口所有的697张图片,可以使用下方代码:

'''依赖模块
pip install requests
'''
import concurrent.futures as cf
import os, time, requests

# 单张图片下载函数
def down(fname, url):
    res = requests.get(url)
    with open(fname, 'wb') as f:
        f.write(res.content)

# 进度条打印函数
def show(num, _sum,  runTime):
    barLen = 20
    perFin = num/_sum
    numFin = round(barLen*perFin)
    numNon = barLen-numFin
    leftTime = (1-perFin)*(runTime/perFin)
    print(
        f"{num:0>{len(str(_sum))}}/{_sum}",
        f"|{'█'*numFin}{' '*numNon}|",
        f"PROCESS: {perFin*100:.0f}%",
        f"RUN: {runTime:.0f}S",
        f"ETA: {leftTime:.0f}S",
        end='
'
    )
    if num == _sum:
        print()

# 主函数(多线程)
def main():                  
    floder = './img/'
    os.makedirs(floder, exist_ok=True)
    fmt = 'https://cdn.jsdelivr.net/gh/uxiaohan/GitImgTypecho/Acg/api.vvhan.com[{}].jpg'
    total = 697
    with cf.ThreadPoolExecutor() as tp:
        t1 = time.time()
        futures = []
        for i in range(total):
            url = fmt.format(i)
            fname = floder+os.path.basename(url)
            future = tp.submit(down, fname, url)
            futures.append(future)
        count = 0
        for future in cf.as_completed(futures):
            count += 1
            t2 = time.time()
            show(count, total, t2-t1)
    os.system('pause')


main()

2. 樱花API

2.1. 接口文档

https://www.dmoe.cc/

2.2. 请求地址

https://www.dmoe.cc/random.php

2.3. 请求方式

get

2.4. 请求参数

字段 类型 描述
return str 响应数据格式,可选json

2.5. 示例代码

import json, requests
url = 'http://www.dmoe.cc/random.php'
params = {'return': 'json'}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))

2.6. 响应数据

{
  "code": "200",
  "imgurl": "https://tva1.sinaimg.cn/large/0072Vf1pgy1foxkil4o6qj31hc0u0nbz.jpg",
  "width": "1920",
  "height": "1080"
}

2.7. 图片预览

3. 岁月小筑API

3.1. 接口文档

http://img.xjh.me/

3.2. 请求地址

  • https

https://img.xjh.me/random_img.php

  • http

http://img.xjh.me/random_img.php

3.3. 请求方式

get

3.4. 请求参数

字段 类型 描述
return str 响应数据格式,可选json或302
type str 返回图片类型,可选bg即背景图
ctype str 背景图类型,可选acg或nature

3.5. 示例代码

import json, requests
url = 'https://img.xjh.me/random_img.php'
params = {
    'return': 'json',
    'type': 'bg',
    'cytpe': 'acg'
}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))

3.6. 响应数据

{
  "error": 0,
  "result": 200,
  "img": "//img.xjh.me/desktop/bg/acg/53829526_p0.jpg"
}

3.7. 图片预览

4. Lucky小站API(失效)

4.1. 接口文档

https://www.nck.cc/index.php/archives/3/

4.2. 请求地址

https://www.rrll.cc/tuceng/ecy.php

4.3. 请求方式

get

4.4. 请求参数

字段 类型 描述
return str 响应数据格式,可选json

4.5. 示例代码

url = 'https://www.rrll.cc/tuceng/ecy.php'
params = {
    'return': 'json'
}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))

4.6. 响应数据

{
  "code": "200",
  "acgurl": "https://tva4.sinaimg.cn/large/0072Vf1pgy1foxkgc5msdj31hc0u01cv.jpg",
  "width": "1920",
  "height": "1080",
  "size": "jpg"
}

5. 三秋API

5.1. 接口文档

https://api.ghser.com/acg.html

5.2. 请求地址

https://api.ghser.com/random/api.php

5.3. 请求方式

get/post

5.4. 请求参数

5.5. 示例代码

import json, requests
url = 'https://api.ghser.com/random/api.php'
res = requests.get(url)
print(res.url)

5.6. 响应数据

返回302重定向后的图片url

https://tva1.sinaimg.cn/large/006gkh44ly1fz1kddbampj31hc0u0tyb.jpg

5.7. 图片预览

在这里插入图片描述

7. 呓喵酱API

7.1. 接口文档

https://www.eee.dog/tech/rand-pic-api.html

7.2. 请求地址

https://api.yimian.xyz/img

7.3. 请求方式

get/post

7.4. 请求参数

字段 类型 描述
type str 图片类型,可选moe为二次元图
size str 图片大小,可选1920×1080

7.5. 示例代码

import json, requests
url = 'https://api.yimian.xyz/img'
params = {
    'type': 'moe',
    'size': '1920x1080'
}
res = requests.get(url, params=params)
print(res.url)

7.6. 响应数据

返回302重定向后的图片url

https://yimian-image.obs.cn-east-2.myhuaweicloud.com/moe/img_865_2048x1152_96.5199966430664_null_normal.jpg?AWSAccessKeyId=6LJRZC0YN3MQXXFOWMIH&Expires=1608815304&Signature=C5BWWC/r1/o230t1VVLHHmH0kF4%3D

7.7. 图片预览

8. 调用代码汇总

# %%1. 韩小韩API
import json, requests
url = 'https://api.vvhan.com/api/acgimg'
params = {'type': 'json'}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))


# %%2. 樱花API
import json, requests
url = 'http://www.dmoe.cc/random.php'
params = {'return': 'json'}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))


# %%3. 岁月小筑API
import json, requests
url = 'https://img.xjh.me/random_img.php'
params = {
    'return': 'json',
    'type': 'bg',
    'cytpe': 'acg'
}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))


# %%4. Lucky小站API
import json, requests
url = 'https://www.rrll.cc/tuceng/ecy.php'
params = {
    'return': 'json'
}
res = requests.get(url, params=params).json()
print(json.dumps(res, indent=2))


# %%5. 一叶三秋API
import json, requests
url = 'https://api.ghser.com/random/api.php'
res = requests.get(url)
print(res.url)


# %%6. 汐岑API
import json, requests
url = 'https://acg.yanwz.cn/wallpaper/api.php'
res = requests.get(url)
with open('test.jpg', 'wb') as f:
    f.write(res.content)

# %%7. 呓喵酱API
import json, requests
url = 'https://api.yimian.xyz/img'
params = {
    'type': 'moe',
    'size': '1920x1080'
}
res = requests.get(url, params=params)
print(res.url)

9. 网页调用示例

樱花API为例

  • 插入图片
<img src="http://www.dmoe.cc/random.php"/>
  • 背景图片
<body style="background: url(http://www.dmoe.cc/random.php);"></body>

其它API只需要替换srcurl属性值为以下值

1. 韩小韩API
https://api.vvhan.com/api/acgimg
2. 樱花API(失效)
http://www.dmoe.cc/random.php
3. 岁月小筑API
https://img.xjh.me/random_img.php?return=302
4. Lucky小站API(失效)
https://www.rrll.cc/tuceng/ecy.php
5. 一叶三秋API(失效)
https://api.ghser.com/random/api.php
6. 汐岑API(失效)
https://acg.yanwz.cn/wallpaper/api.php
7. 呓喵酱API
https://api.yimian.xyz/img

原文地址:https://www.cnblogs.com/ghgxj/p/14219047.html

  • 标题:【python】7个随机二次元图片api接口汇总(附网页调用示例)(转载)
  • 作者:Space520
  • 链接:https://space520.eu.org/archives/262
  • 版权声明:本博客所有文章除特别声明外,均为 原创 和采用 CC BY-NC-SA 4.0 协议。转载请注明文章出处(https://space520.eu.org/archives/262)及作者。

评论

  1. 博主
    广东省茂名市 电信
    已编辑
    1年前
    2023-1-11 15:40:26

    微信公众号排版工具。问题或建议,请公众号留言。程序员翻身

    建议使用 Chrome 浏览器,体验最佳效果。

    使`用微信公众号编辑器有一个十分头疼的问题:粘贴出来的代码,格式错乱,空间小还带行号,而且特别丑。Markdown.com.cn编辑器能够解决这个问题。

    Markdown是一种轻量级的「标记语言」。

    请阅读下方文本熟悉工具使用方法`,本文可直接拷贝到微信中预览。

    1 Markdown.com.cn 简介

    • 支持自定义样式的 Markdown 编辑器
    • 支持微信公众号、知乎和稀土掘金
    • 点击右上方对应图标,一键复制到各平台

    2 Markdown语法教程

    2.1 标题

    不同数量的#可以完成不同的标题,如下:

    一级标题

    二级标题

    三级标题

    2.2 字体

    粗体、斜体、粗体和斜体,删除线,需要在文字前后加不同的标记符号。如下:

    这个是粗体

    这个是斜体

    这个是粗体加斜体

    ~这里想用删除线~~

    注:如果想给字体换颜色、字体或者居中显示,需要使用内嵌HTML来实现。

    2.3 无序列表

    无序列表的使用,在符号-后加空格使用。如下:

    • 无序列表 1
    • 无序列表 2
    • 无序列表 3

    如果要控制列表的层级,则需要在符号-前使用空格。如下:

    • 无序列表 1
    • 无序列表 2
      • 无序列表 2.1
      • 无序列表 2.2

    由于微信原因,最多支持到二级列表

    2.4 有序列表

    有序列表的使用,在数字及符号.后加空格后输入内容,如下:

    1. 有序列表 1
    2. 有序列表 2
    3. 有序列表 3

    2.5 引用

    引用的格式是在符号>后面书写文字。如下:

    读一本好书,就是在和高尚的人谈话。 ——歌德

    雇用制度对工人不利,但工人根本无力摆脱这个制度。 ——阮一峰

    2.7 链接

    微信公众号仅支持公众号文章链接,即域名为https://mp.weixin.qq.com/的合法链接。使用方法如下所示:

    对于该论述,欢迎读者查阅之前发过的文章,你是《未来世界的幸存者》么?
    <a id=”jump_8″>

    2.8 图片

    插入图片,格式如下:



    查看图片
    这里写图片描述

    支持 jpg、png、gif、svg 等图片格式,其中 svg 文件仅可在微信公众平台中使用,svg 文件示例如下:



    查看图片


    支持图片拖拽和截图粘贴到编辑器中。

    注:支持图片 拖拽和截图粘贴 到编辑器中,仅支持 https 的图片,图片粘贴到微信时会自动上传微信服务器。

    2.9 分割线

    可以在一行中用三个以上的减号来建立一个分隔线,同时需要在分隔线的上面空一行。如下:


    2.10 表格

    可以使用冒号来定义表格的对齐方式,如下:

    姓名 年龄 工作
    小可爱 18 吃可爱多
    小小勇敢 20 爬棵勇敢树
    小小小机智 22 看一本机智书

    3. 特殊语法

    3.1 脚注

    支持平台:微信公众号、知乎。

    脚注与链接的区别如下所示:

    链接:[文字](链接)
    脚注:[文字](脚注解释 "脚注名字")

    有人认为在[大前端时代](https://en.wikipedia.org/wiki/Front-end_web_development “Front-end web development”)的背景下,移动端开发(Android、IOS)将逐步退出历史舞台。

    [全栈工程师](是指掌握多种技能,并能利用多种技能独立完成产品的人。 “什么是全栈工程师”)在业务开发流程中起到了至关重要的作用。

    脚注内容请拉到最下面观看。

    3.2 代码块

    支持平台:微信代码主题仅支持微信公众号!其他主题无限制。

    如果在一个行内需要引用代码,只要用反引号引起来就好,如下:

    Use the printf() function.

    在需要高亮的代码块的前一行及后一行使用三个反引号,同时第一行反引号后面表示代码块所使用的语言,如下:

    // FileName: HelloWorld.java
    public class HelloWorld {
      // Java 入口程序,程序从此入口
      public static void main(String[] args) {
        System.out.println("Hello,World!"); // 向控制台打印一条语句
      }
    }

    支持以下语言种类:

    bash
    clojure,cpp,cs,css
    dart,dockerfile, diff
    erlang
    go,gradle,groovy
    haskell
    java,javascript,json,julia
    kotlin
    lisp,lua
    makefile,markdown,matlab
    objectivec
    perl,php,python
    r,ruby,rust
    scala,shell,sql,swift
    tex,typescript
    verilog,vhdl
    xml
    yaml

    如果想要更换代码高亮样式,可在上方代码主题中挑选。

    其中微信代码主题与微信官方一致,有以下注意事项:

    • 带行号且不换行,代码大小与官方一致
    • 需要在代码块处标志语言,否则无法高亮
    • 粘贴到公众号后,用鼠标点代码块内外一次,完成高亮

    diff 不能同时和其他语言的高亮同时显示,且需要调整代码主题为微信代码主题以外的代码主题才能看到 diff 效果,使用效果如下:

    + 新增项
    - 删除项

    其他主题不带行号,可自定义是否换行,代码大小与当前编辑器一致

    3.3 数学公式

    支持平台:微信公众号、知乎。

    行内公式使用方法,比如这个化学公式:$ce{Hg^2+ ->[I-] HgI2 ->[I-] [Hg^{II}I4]^2-}$

    块公式使用方法如下:

    $$H(D_2) = -left(frac{2}{4}log_2 frac{2}{4} + frac{2}{4}log_2 frac{2}{4}right) = 1$$

    矩阵:

    $$
    begin{pmatrix}
    1 & a_1 & a_1^2 & cdots & a_1^n \
    1 & a_2 & a_2^2 & cdots & a_2^n \
    vdots & vdots & vdots & ddots & vdots \
    1 & a_m & a_m^2 & cdots & a_m^n \
    end{pmatrix}
    $$

    公式由于微信不支持,目前的解决方案是转成 svg 放到微信中,无需调整,矢量不失真。

    目前测试如果公式量过大,在 Chrome 下会存在粘贴后无响应,但是在 Firefox 中始终能够成功。

    3.4 TOC

    支持平台:微信公众号、知乎。

    TOC 全称为 Table of Content,列出全部标题。

    [TOC]

    由于微信只支持到二级列表,本工具仅支持二级标题和三级标题的显示。

    3.5 注音符号

    支持平台:微信公众号。

    支持注音符号,用法如下:

    Markdown Nice 这么好用,简直是{喜大普奔|hē hē hē hē}呀!

    3.6 横屏滑动幻灯片

    支持平台:微信公众号。

    通过<![](url),![](url)>这种语法设置横屏滑动滑动片,具体用法如下:

    <

    查看图片
    蓝1

    ,

    查看图片
    绿2

    ,

    查看图片
    红3

    >

    4 其他语法

    4.1 HTML

    支持原生 HTML 语法,请写内联样式,如下:

    <span style=”display:block;text-align:right;color:orangered;”>橙色居右
    <span style=”display:block;text-align:center;color:orangered;”>橙色居中

    4.2 UML

    不支持,推荐使用开源工具https://draw.io/制作后再导入图片

    5 致谢

  2. 迷雾老兵
    广东省茂名市 电信
    1年前
    2023-1-10 5:10:47

    ヾ(≧∇≦*)ゝ
    二次元

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
Copyright 2023 Space520
PoweredWordPress
Running Time days H M S
Theme Argon
| 耗时 1.072 秒 | 查询 44 次 | 内存 19.06 MB |