美高梅4858-美高梅4858mgm-[官方网站]

TodayInHistory | 历史上的今天数据库 PHP版API

如果你只是想要 API 接口,请访问:历史上的今天 免费API 开发文档

? TodayInHistory | 历史上的今天

历史上的今天数据库,数据源于“维基百科”,演示地址:https://api.nowtime.cc/today_in_history.html

GitHub 项目地址:https://github.com/PrintNow/TodayInHistory

对你有用别忘了点个 Start?

? 说一下爬虫思路

  1. 先下载 https://zh.wikipedia.org/wiki/1月1日

https://zh.wikipedia.org/wiki/12月31日 366天的页面(我用了 3分钟 左右全部下载完成)

  1. 然后写代码(用的世界上最好的语言 PHP)进行数据清洗,这步我花了好久,大概两三个小时(惭愧惭愧,水平有限?)
  2. 清洗完成后导出为 history_in_today.json 文件
  3. 然后写代码(用的世界上最好的语言 PHP)将其批量插入 MySQL数据库
  4. 写 API 逻辑代码,我用的 ThinkPHP 框架,接口地址:https://api.nowtime.cc/v1/today_in_history
  5. 然后根据我之前写的 PrintNow/TimeLine 时间线,修改成了 index.html
  6. 然后你就看到了本项目

? 使用方法

我准备了两份数据 history_in_today.sqlhistory_in_today.json
你可以随意发挥,或使用我写好的,如下?
  1. ? 准备一个 PHP 环境
  2. 下载源码,解压后放置网站根目录
  3. history_in_today.sql 导入 MySQL 数据库
  4. 配置好数据库信息,在 api.php 第 14~17 行
  5. 修改 [static/script.js]() 第3行,将 https://api.nowtime.cc/v1/today_in_history 替换成 http://你的域名/api.php
  6. 打开 http://你的域名/index.html
  7. enjoy ?

? 截图

历史上的今天

? API 字段说明

? 请求

使用 GET 方法请求 https://api.nowtime.cc/v1/today_in_history

例子,获取1月1日,降序排序:https://api.nowtime.cc/v1/today_in_history?month=1&day=1&order=asc

字段说明
month月份。默认值是本月,你可以输入 1~12 之间的数字
day日期。默认值是今天,你可以输入 1~31 之间的数字
order排序方式。根据 年份排序,默认值是 desc 降序(从大到小),你可以输入 descasc

? 返回

字段类型说明
codeint[必有] 状态码,正常返回 200,其它包括数据不存在都返回如 500、-1
msgstring[必有] 信息,正常返回 ok,非 200 状态码返回错误原因
countint历史上的今天返回数量
disclaimerstring[必有] 免责声明,可以自己在 api.php 第82行 进行修改
dataarray历史上的今天 数据,字段说明请看下方
yearint[必有] 年份,如果前面带有有负号 -,则代表是公元前
monthint[必有] 月份
typeint[必有] 事件类型,1:大事件,2:出生,3:逝世
datastring[必有] 事件信息,如果当天有多个事件,将以 ${{delimiter}} 作为分隔符进行分割。PHP 可以使用 explode() 函数进行分割,美高梅4858mgm 可以使用 split 方法进行分割
请注意,以下是我进行了修改的,实际返回条数不止 2条
{
    "code": 200,
    "msg": "ok",
    "count": 2,
    "disclaimer": "数据源于“维基百科”,经过加工后为您呈现本数据,数据采集于 2020\/04\/12 12:00,在此之后一些数据可能发生了改变,请以事实为准!美高梅4858不承担任何因数据改变而造成的任何责任",
    "data": [{
        "year": 2020,
        "month": 1,
        "day": 1,
        "type": 3,
        "data": "大卫·斯特恩,前任美国国家篮球协会总裁(1942年出生)"
    }, {
        "year": 2019,
        "month": 1,
        "day": 1,
        "type": 1,
        "data": "中华民国实施大型餐饮业如连锁速食店等,内用将禁止提供塑胶吸管的规定[3][4];中华民国依法届期终止第三代行动通讯(3G)业务。"
    }]
}

如无特别声明,该文章均为 美高梅4858官方网站NowTime.cc)原创,转载请遵循 署名-非商业性使用 4.0 国际(CC BY-NC 4.0) 协议,即转载请注明文章来源。


标签: PHP, 历史上的今天

赞 (0)

添加新评论

XML 地图 | Sitemap 地图