2023年12月北京暴雪记录

记录暴雪下普通打工人的生活。 12月14日 周四 北京的雪已经连着下了两天了。 12月11日,也是因为下雪,晚上打车打到10点半才叫到车。 所以这次下雪后,晚上就早走了。 ...

2023-12-16 · 2 min · 599 words · Liudon

使用Hugo实现响应式和优化的图片

继续我们的博客优化之旅,本篇内容我们将介绍如何使用Hugo实现响应式和优化的图片。 问题 在之前文章里,通过腾讯云数据万象实现了图片优化能力,具体的可参考文章累计布局偏移修复方案改进 —— 自动生成图片宽高。 经过一段运行后,发现这里有一个弊端。 Run hugo --gc --minify --cleanDestinationDir Start building sites … hugo v0.119.0-b84644c008e0dc2c4b67bd69cccf87a41a03937e linux/amd64 BuildDate=2023-09-24T15:20:17Z VendorInfo=gohugoio ERROR Failed to get JSON resource "https://static.***.com/64412246-9050f100-d0c1-11e9-893a-f9b0766533ad.png?imageInfo&t=1698674110": Get "https://static.***.com/64412246-9050f100-d0c1-11e9-893a-f9b0766533ad.png?imageInfo&t=1698674110": stream error: stream ID 1; STREAM_CLOSED; received from peer ERROR Failed to get JSON resource "https://static.***.com/SkRx5uFwQ8Cliyq.jpg?imageInfo&t=1698674110": Get "https://static.***.com/SkRx5uFwQ8Cliyq.jpg?imageInfo&t=1698674110": stream error: stream ID 3; STREAM_CLOSED; received from peer 随着图片数量增多,因为需要调接口查询图片信息,这里构建耗时变长,同时也特别容易出现超时导致构建失败。 ...

2023-12-10 · 5 min · 2021 words · Liudon

加速Google Analytics

起因 Google Analytics是一款优秀的流量分析服务,集成方便,使用简单。 最近在优化页面访问速度,发现Google Analytics是一个优化点。 优化 1. 访问加速 国内访问Google Analytics很慢,同时还面临着各种广告屏蔽插件拦截。 ...

2023-12-02 · 2 min · 870 words · Liudon

使用Google Indexing API加速博客收录

对于一个新站点来说,总是想着能让搜索引擎快点收录网站内容。 今天,我们就来介绍一种利用Google Indexing API接口,通过Github Actions实现部署时通知Google抓取页面内容。 ...

2023-10-27 · 2 min · 635 words · Liudon

在Netlify上部署Twikoo评论系统

在本篇文章里,我会介绍如何在Netlify上部署Twikoo评论系统,如何接入到静态博客Hugo,以及如何实现Twikoo系统版本自动更新。 2024年7月30日更新:因为Github接口策略调整,原有的匿名通过接口获取版本号方法失效,已更改为带token方式请求接口获取版本号,详见workflow里Get twikoo version步骤配置。 ...

2023-10-19 · 5 min · 2232 words · Liudon

利用Github Actions定时抓取微博

背景 在微博上关注了一些用户,比如tk教主,月风。 但是有些内容过段时间不可见了,所以希望可以定时抓取微博归档备份下来。 实现方案 整体思路:利用Github Actions的Scheduled任务,定时执行抓取shell脚本,将内容保存到文件,提交到Github仓库。 ...

2023-10-07 · 2 min · 823 words · Liudon

北大口腔牙周刮治记录

病情 上次洗完牙后,还是不时有出血的情况。 前段时间更是出现牙龈劈开一块肉,特别容易塞东西的情况。 于是,又跑到医院来看牙了。 医生检查后,说是牙周病,需要牙周刮治,要约到8月份了。 ...

2023-09-17 · 2 min · 716 words · Liudon

故乡回忆之旅

赶在8月底,趁着娃暑假的尾声,回了趟老家。 老家有条俗语,“永福庄的街,三里长”。 这天吃完午饭,临时起意,带媳妇溜溜大街,见识下我们的大街。 小时候,整天在这条街上跑来跑去。 ...

2023-09-09 · 1 min · 292 words · Liudon

解决Golang使用go get安装包后找不到可执行文件的问题

背景 编译流水线代码 go get google.golang.org/protobuf/cmd/protoc-gen-go@latest protoc -I=./zzz --proto_path=./xx --go_out=./abc --go_opt=paths=xx.proto ... go build -o xxx 在go升级到1.20.1版本后,执行报错。 protoc-gen-go: program not found or is not executable 解决 Starting in Go 1.17, installing executables with go get is deprecated. go install may be used instead. In a future Go release, go get will no longer build packages; it will only be used to add, update, or remove dependencies in go.mod. Specifically, go get will act as if the -d flag were enabled. ...

2023-08-17 · 1 min · 195 words · Liudon

修正Hugo的JSON Feed格式

问题背景 前几天在Planet里follow自己的web3博客,遇到下面的错误。 经过Livid大佬提醒,说是网站的JSON Feed不是标准格式导致的。 因为我的已经修正没法截图,这里以dvel的博客举例,格式类似如下。 [ { "content": "用 ChatGPT 写一些小脚本真是太方便了。\nGPT-4 发布后试了试,还是蛮不错的,代码是 ChatGPT 生成的。\n几个来回就可以编写一个能正常使用的油猴脚本:\n(略,HTML 代码) 在 https://chdbits.co/bakatest.php 有如上内容。 我要为这个网页编写一个油猴脚本。 通过自动获取 ChatGPT 的 API 来解析此问题的答案,供用户参考。 将内容输出到 `#outer > h1` 的下面,同时输出你提取到的问题内容和答案,以便我看看你是否提取正确。 获取错啦。 问题的获取路径是 `#outer > form > table > tbody > tr:nth-child(1) > td` 选项的获取路径是 `#outer > form > table > tbody > tr:nth-child(2) > td` 使用这个 API: ``` curl https://api.openai.com/v1/chat/completions \\ -H 'Content-Type: application/json' \\ -H 'Authorization: Bearer YOUR_API_KEY' \\ -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Say this is a test!"}], "temperature": 0.7 }' ``` 响应格式为: ``` { "id":"chatcmpl-abc123", "object":"chat.completion", "created":1677858242, "model":"gpt-3.5-turbo-0301", "usage":{ "prompt_tokens":13, "completion_tokens":7, "total_tokens":20 }, "choices":[ { "message":{ "role":"assistant", "content":"\\n\\nThis is a test!" }, "finish_reason":"stop", "index":0 } ] } ``` 它没有最近的互联网数据,所以还是需要把 API 的使用方式发给它。\n然后它就帮我写好了,我不用复习 JavaScript,不用看油猴脚本的教程和文档,也不用查 @grant 等等标记是干嘛的。\n可以再继续要求它改进一些,比如换个输出位置,优化 prompt,自动选中正确回答,支持单选题和多选题等等。\n效果展示:\n安装: https://greasyfork.org/zh-CN/scripts/461944-chd-quiz-answer\n", "permalink": "https://dvel.me/posts/chd-quiz-answer/", "summary": "用 ChatGPT 写一些小脚本真是太方便了。\nGPT-4 发布后试了试,还是蛮不错的,代码是 ChatGPT 生成的。\n几个来回就可以编写一个能正常使用的油猴脚本:\n(略,HTML 代码) 在 https://chdbits.co/bakatest.php 有如上内容。 我要为这个网页编写一个油猴脚本。 通过自动获取 ChatGPT 的 API 来解析此问题的答案,供用户参考。 将内容输出到 `#outer > h1` 的下面,同时输出你提取到的问题内容和答案,以便我看看你是否提取正确。 获取错啦。 问题的获取路径是 `#outer > form > table > tbody > tr:nth-child(1) > td` 选项的获取路径是 `#outer > form > table > tbody > tr:nth-child(2) > td` 使用这个 API: ``` curl https://api.openai.com/v1/chat/completions \\ -H 'Content-Type: application/json' \\ -H 'Authorization: Bearer YOUR_API_KEY' \\ -d '{ "model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Say this is a test!", "title": "CHD 油猴脚本:每日签到自动答题" }, ... ] 下面是一个JSON Feed的示例,详细规范见jsonfeed.org。 ...

2023-03-25 · 3 min · 1451 words · Liudon

我的学车之路

之前在2022年终总结提到过,我在练车考驾照。 就在昨天,终于拿证了。👏👏👏 咱也是可以上路开车的人了,虽然比别人晚了快10年才拿证。🐶 2022年6月11日,在海淀驾校报名,周末连续班,报名费5380元。 2022年10月12日,科目一考试通过。 2022年10月22日,科目二模拟驾驶。 2022年11月13日,科目二第一次上车练习。 2022年11月24日,疫情严重,驾校发通知,自11月25日暂停培训。 2023年2月4日,年后驾校恢复培训,继续科目二练车。 2023年2月13日,科目二考试通过。 2023年3月11日,科目三上路练习。 2023年3月23日,上午科目三考试通过,下午科目四考试通过。 考试的时候,早上遇到临时交通管制,一直到9点40才开考。 考完回来,班车上的人说又管制不能考了。 班车拉回驾校,剩下的人中午加班考试。 终于不用再5点半起床赶班车了。🥱 ...

2023-03-24 · 1 min · 375 words · Liudon
将博客部署到星际文件系统(IPFS)

将博客部署到星际文件系统(IPFS)

将博客部署到星际文件系统(IPFS)

在这篇文章,我将会介绍如何利用Github Actions将hugo博客自动部署到IPFS上,并通过自定义域名访问IPFS上的文件。 IPFS(InterPlanetary File System)中文称为星际文件系统,是一个旨在实现文件的分布式存储、共享和持久化的网络传输协议。 ...

2023-02-21 · 3 min · 1326 words · Liudon

新冠疫情后的第一个春节

下面的内容是由chatGPT润色生成的。 AI太强大了 😂 当我还是个孩子的时候,在看春节晚会时,总会有节目介绍那些不能回家过年的人。 但我从未想过,等我长大后,我也会成为其中的一员。 ...

2023-02-16 · 1 min · 242 words · Liudon

第一次清理键盘

19年生日的时候,媳妇送了一款flico的机械键盘。 这次搬家后,想着年前清理下键盘,实在是太脏了。 周五下班,带上键盘回家。 ...

2023-01-16 · 1 min · 141 words · Liudon

2022年终总结

2022年已经过去1周多了,记录一下我的2022年。 疫情 2022年,是新冠疫情的第三年,也是切身感受到的一年。 3月22日晚,8点半和同事刚上13号线地铁。 ...

2023-01-12 · 2 min · 646 words · Liudon

去掉Cloudflare烦人的email-decode.min.js请求

通过WebPageTest页面测试,发现一个/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js的文件请求,影响到了页面渲染。 ...

2022-08-26 · 1 min · 180 words · Liudon
累计布局偏移修复方案改进 —— 自动生成图片宽高

累计布局偏移修复方案改进 —— 自动生成图片宽高

累计布局偏移修复方案改进 —— 自动生成图片宽高

本站已不再采用本方案,新方案见使用Hugo实现响应式和优化的图片 遗留的问题 上一篇文章讲了我是如何解决博客累计布局偏移的问题,但是这个方案存在一个很大的问题。 手动输入每张图片的宽高 这就要求每次插入图片后,需要手动查看图片宽高,修改插入代码,导致整个流程变得繁琐,无法自动化。 ...

2022-08-24 · 3 min · 1157 words · Liudon

优化博客的累计布局偏移(CLS)问题

此文已过期,优化方案参考累计布局偏移修复方案改进 —— 自动生成图片宽高. 问题表现 7月份将博客部署由Github迁移到Cloudflare后,开始关注博客的性能问题。 偶然看到苏卡卡大佬的CLS优化文章,拿自己博客也测试了下,发现也存在同样的问题。 ...

2022-08-20 · 2 min · 886 words · Liudon

将博客部署到Cloudflare Pages

目前博客是部署到了Github Pages上,具体实现见博客架构说明。 缘由 Github Pages部署有一个问题,就是不支持HSTS。 HTTP Strict Transport Security(通常简称为HSTS)是一个安全功能,它告诉浏览器只能通过 HTTPS 访问当前资源,而不是HTTP。 ...

2022-07-29 · 2 min · 644 words · Liudon
向日葵

向日葵

奥林匹克公园向日葵之旅

媳妇有事回老家了,这两天自己带娃。 小区群里有人说奥林匹克公园的向日葵开了,适合拍照。 正好周六多云,没有太阳,出门遛娃。 带上我好久不用的相机,省得发霉了。 ...

2022-07-21 · 1 min · 179 words · Liudon