为了让网站内容更丰富,我们可以搭建一个新闻聚合页面。页面效果可参考:https://www.58c.cn/60s 。其中包含 每日简报、当下非常热门的 60 秒读懂全世界,以及 必应每日壁纸。接口资源十分丰富,大家可以根据需求自行接入。今天主要演示 简报 与 60 秒读懂全世界(图文版) 的效果。
此教程站长仅在子比主题上测试,别的主题自行尝试!
每天30秒读懂全世界运行原理,首先从60s通过api获取每日的数据,数据保存在服务器上,然后通过Python在本地将获取的数据生成一张图片,在将图片同步到oss云存储,最后将图片展示在网站中!
每日简报原理,首先将今日简报的内容通过Webhook发送至服务器,然后将服务器的数据通过代码展示出来。
60s读懂全世界
首先我们要先部署自己的60s接口网站,不想部署可以利用公共实例!
60s开源仓库地址:https://github.com/vikiboss/60s 使用docker部署很简单的,这里不做教程!
当60s部署好之后,访问容器绑定的域名或者ip加端口访问出现下面内容证明60s部署成功了!
![图片[1]-如何给自己的网站做一个每日新闻页!-58创客网](https://c.duomilc.com/58sso/2025/09/20250928080549155.png)
接口部署成功后下来我们将在服务器调用接口并且生成图片!
第一步:在服务器文件创建一个文件夹,不需要必须在网站目录内,服务器本地文件中创建即可!
![图片[2]-如何给自己的网站做一个每日新闻页!-58创客网](https://c.duomilc.com/58sso/2025/09/20250928081116942.png)
第二步:下载py文件,将文件放到自己创建的目录里面去!
下来在文件夹上方点击终端,输入下方命令
执行命令:python3 你的文件名.py
执行完成就会看到自己设置的文件目录下会出现生成的图片!
第三步:将图片上传至oss然后网站前端调用【不上传也可以直接在服务器调用】
import oss2
import os
import time
# ================= 配置项 =================
ACCESS_KEY_ID = '自己的key' # 自己阿里云
ACCESS_KEY_SECRET = '自己的key' # 自己阿里云
BUCKET_NAME = 'duomilc' # 存储名称
ENDPOINT = '根据子的存储填写' # 例如 'oss-cn-hangzhou.aliyuncs.com'
LOCAL_FOLDER = r'本地文件夹' # 本地文件夹
REMOTE_FOLDER = '云端目录' # OSS 上的前缀,可为空
# =========================================
# 初始化 OSS
auth = oss2.Auth(ACCESS_KEY_ID, ACCESS_KEY_SECRET)
bucket = oss2.Bucket(auth, ENDPOINT, BUCKET_NAME)
def list_oss_objects(prefix):
"""获取 OSS 上指定前缀下所有对象"""
keys = []
for obj in oss2.ObjectIterator(bucket, prefix=prefix):
keys.append(obj.key)
return keys
def upload_file(local_path, remote_path):
try:
bucket.put_object_from_file(remote_path, local_path)
print(f"[上传成功] {remote_path}")
except Exception as e:
print(f"[上传失败] {remote_path},错误: {e}")
def delete_oss_file(remote_path):
try:
bucket.delete_object(remote_path)
print(f"[删除成功] {remote_path}")
except Exception as e:
print(f"[删除失败] {remote_path},错误: {e}")
def sync_local_to_oss(local_folder, remote_folder):
"""本地控制 OSS 同步"""
# 遍历本地文件
local_files = []
for root, dirs, files in os.walk(local_folder):
for file in files:
local_path = os.path.join(root, file)
relative_path = os.path.relpath(local_path, local_folder).replace("\\", "/")
remote_path = f"{remote_folder}{relative_path}"
local_files.append(remote_path)
# 上传文件
upload_file(local_path, remote_path)
# 获取 OSS 上的文件列表
oss_files = list_oss_objects(remote_folder)
# 删除 OSS 上已经不存在于本地的文件
for oss_file in oss_files:
if oss_file not in local_files:
delete_oss_file(oss_file)
if __name__ == "__main__":
print("开始同步本地到 OSS...")
sync_local_to_oss(LOCAL_FOLDER, REMOTE_FOLDER)
print("同步完成!")
下来在文件夹上方点击终端,输入下方命令
执行命令:python3 你的文件名.py
执行完成后本地图片就会上传至阿里云oss云存储上!
第四步:在网站后台创建一个页面,开启模块化布局,然后添加一个模块html模块,将下述代码粘贴进去即可!
<div style="display:flex; justify-content:center; align-items:center; width:100%; overflow:hidden;">
<img src="输入自己的图片地址"
alt="自适应图片"
style="
width:100%;
max-width:1000px;
height:auto;
border-radius:12px;
box-shadow:0 8px 20px rgba(0,0,0,0.2);
display:block;
"
>
</div>
第五步:设置一个自动执行脚本,这样每天自动生成图片,然后自动上传,上传完成后每次网站调用的都是最新的图片!
暂无评论内容