首页 > 其他分享 >如何获取指定诗歌ID的《唐诗三百首》接口

如何获取指定诗歌ID的《唐诗三百首》接口

时间:2023-12-02 16:44:50浏览次数:25  
标签:title -- 诗歌 接口 id 获取 唐诗三百 ID

随着移动互联网的普及,越来越多的人开始学习和欣赏唐诗。不过,对于一些想要获取指定诗歌ID的人来说,这似乎是一件有点困难的事情。好在《唐诗三百首》接口为我们提供了方便快捷的解决方法。下面,就让我们来介绍一下如何获取指定诗歌ID的《唐诗三百首》接口。

数据源介绍: 数据示例下载 ↓

《唐诗三百首》共选入唐代诗人77位,计311首诗,其中五言古诗33首,乐府46首,七言古诗28首,七言律诗50首,五言绝句29首,七言绝句51首,诸诗配有注释和评点。 五言古诗简称五古,是唐代诗坛较为流行的体裁。唐人五古笔力豪纵,气象万千,直接用于叙事、抒情、议论、写景,使其功能得到了空前的发挥,其代表作家李白、杜甫、王维、孟浩然、韦应物等。 七言古诗简称七古,起源于战国时期,甚至更早。

 

一. 接口的调用方式

1.1 获取诗歌列表

首先,我们需要获取到《唐诗三百首》的诗歌列表,这可以通过以下代码实现:

 

curl --request GET \
--url 'https://www.wapi.cn/source/10.html/tang_poetry?type=1&page=1&count=1000' \
--header 'accept: application/json'

  

其中,type参数为1,代表获取全部诗歌;page和count参数可以根据需要进行修改。

1.2 搜索指定诗歌

有了诗歌列表,我们就可以根据自己的需求搜索指定的诗歌了,以下是实现代码:

 

curl --request GET \
--url 'https://www.wapi.cn/source/10.html=王之涣' \
--header 'accept: application/json'

 

其中,type参数为2,代表搜索;title和author参数则是我们要搜索的诗歌名称和作者。

1.3 获取指定诗歌ID

最后,我们需要从搜索结果中获取到我们需要的诗歌ID,这可以通过以下代码实现:

curl --request GET \
--url 'https://www.wapi.cn/source/10.html=300' \
--header 'accept: application/json'

 

其中,type参数为3,代表获取指定诗歌;id参数则是我们要获取的诗歌ID。

二. 示例代码

下面是一个示例代码,它可以根据用户输入的诗歌名称和作者来获取指定诗歌的ID:

 

python
import requests

def get_poetry_id(title, author):
url = 'https://www.wapi.cn/source/10.html=2&title={}&author={}'.format(title, author)
r = requests.get(url)
result = r.json()['result'][0]
poetry_id = result['id']
return poetry_id

# 以下是测试代码
title = input('请输入诗歌名称:')
author = input('请输入作者名称:')
poetry_id = get_poetry_id(title, author)
print('《{}》的ID为{}'.format(title, poetry_id))

 

三. 总结

通过调用《唐诗三百首》接口,我们可以方便地获取到指定诗歌的ID。这为我们更方便地学习和欣赏唐诗提供了便利。希望本文能够对大家有所帮助。最后,附上一首唐诗以献给读者:

《登高》

临晚居高远,空余百虑生。

江山故垒在,何处是温泉?

草色新雨中,松声晚窗里。

欲寻芳草去,惜与故人违。

 

标签:title,--,诗歌,接口,id,获取,唐诗三百,ID
From: https://www.cnblogs.com/wapicn/p/17871827.html

相关文章

  • [题解]AT_abc224_e [ABC224E] Integers on Grid
    比较符合CCF造数据水平的题。思路首先可以用两个vector<pair<int,int>>v[N]分别将每一行、每一列的元素的权值与编号存储下来。那么可以对所有的\(v_i\)按照权值从小到大排序。那么发现对于所有的满足v[i][p].fst<v[i][q].fst的\((p,q)\)都可以建一条从\(p\)指......
  • 接口测试很难?3分钟带你入门接口自动化测试
    1、什么是接口?接口是连接前台和后台的桥梁,前台通过接口调用后端已完成的功能,而无需关注内部的实现细节。借助于接口,可以实现前后台分离,各自完成开发工作后,进行联调,提高工作效率2、接口的分类?GET,POST,PUT,DELETE3、接口的区别?GET与POST的区别答:GET的请求数据是在URL上,POST的请......
  • 可编辑Grid 设置字段只读。
    注册EditGridonrowselectedfunctiononRecordSelect(exeContext){//debugger;var_formContext=exeContext.getFormContext();vardisableFields=["name","estimatedclosedate"];lockFields(exeContext,disableFields);}functionlockFiel......
  • 基于Aidlux平台的工业视觉少样本缺陷检测
    工业视觉缺陷检测的工作流程常用异常检测算法面临的挑战及发展图像分割的数据标注数据标注准确的重要性:1. 训练模型的基础2. 提高模型性能3. 降低误判和误诊分险4. 减少资源浪费自动标注SAM的使用模型切换模型部署#-*-coding:UTF-8-*-importaidlite_gpuimportcv2impor......
  • HTML5 Video视频组件支持的视频编码格式
    一、HTML5Video视频格式与浏览器的支持情况当前,<video>元素支持三种视频格式:MP4,WebM,和Ogg:浏览器MP4WebMOggInternetExplorerYESNONOChromeYESYESYESFirefoxYESYESYESSafariYESNONOOperaYES(从Opera25起)YESYESMP4=带有......
  • 怎么删除磁盘里面的raid?
    要删除已配置为RAID1的sdb磁盘阵列,您可以按照以下步骤进行操作:首先,确保您有管理员权限或root权限来执行这些操作。检查磁盘阵列的状态。运行以下命令来获取RAID1的详细信息:mdadm--detail/dev/md0这将显示有关RAID1的详细信息,包括它的状态、组件磁盘和其它相关信息。3.......
  • 基于Aidlux平台的工业视觉少样本缺陷检测
    工业视觉缺陷检测的工作流程 常用异常检测算法面临的挑战及发展图像分割的数据标注 数据标注准确的重要性:训练模型的基础提高模型性能降低误判和误诊分险减少资源浪费自动标注SAM   模型切换模型部署#-*-coding:UTF-8-*-importaidlite_gpu......
  • 关键字 开发-09 validate断言
    1.yaml文件中添加validate进行接口断言首先我们在utils/validate.py文件添加需要的断言方式importredefequals(check_value,expect_value):assertcheck_value==expect_value,f'{check_value}=={expect_value}'defless_than(check_value,expect_value):......
  • GB28181视频监控平台LiteCVR调取登录接口获取token的操作步骤
    视频监控设备是安防行业的细分专业领域,近年来,随着计算机、网络、图像处理以及传输技术的飞速发展,视频监控技术也迎来质的飞跃,实现从“简单化”到“多元化”的发展。数以万计的监控摄像头遍布城市各个角落,为人们的安全带来有力保障。安防视频监控管理平台LiteCVR能在复杂的网络环......
  • TiDB 在 WPS丨分享业务双机房建设实践
    WPSOffice是一站式办公服务平台,全球范围内,每天有超过5亿个文件在WPSOffice平台上被创建、编辑、和分享。本文分享了WPS在TiDB版本升级和双机房改造中的实践经验。作者:曹鹏,WPS云平台运维Leader;肖尚武,WPS云平台DBA;庾俊,WPS云文档研发。背景WPS算是国内TiDB较早的......