LOGO
首页 网站广场 站长动态 活跃度榜 审核查询 逛逛好站 留言交流 提交申请 关于本站

站长动态

站长动态所展示的是已加入好站网成员站长文章
共同步 2580 篇文章
(每2小时更新一次)
Qi1
入驻第1年
4000公里首摔,真是当头一棒
本来我还挺喜欢摩托车的,这一次摔车真是让我兴趣全无。 本来我和一位同事打算周天,也就是昨天,去爬山的,结果路上出事了。 碰上路上突然出现的长条状凸起,直接被绊翻车了,当时时速是 75 左右。 :::video https://cdn.imqi1.com/uploads/2025/11/98a2dfb0be0b1f0cf3e6e8bd01c73e50_raw.mp4 ::: 看不了视频的看
浩然
入驻第1年
以自然语言的方式使用 Playwright MCP 进行浏览器自动化操作
由上文「MCP 是什么?它是如何工作的?」可以知道,MCP 是大语言模型连接外部工具或服务的桥梁。 Playwright 是微软开源的一款类似 Selenium 的浏览器自动化测试框架。相比 Selenium,Playwright 更加轻量、功能更丰富,且执行速度更快。大语言模型爆发之前,虽然 Playwright 也能胜任一些自动化任务,但主要还是用于自动化测试。
阿川
入驻第1年
上天竺
JN
入驻第1年
Hugo 如何在更新頁面的時候用 RSS 通知訂閱者?
2026/01/31 更新: 現在的 /now 已經不是持續更新同一篇文章了,所以已經不用這個方法來產生新的 RSS item 了。 但如果你有持續更新同一篇文章,而且需要為此產生新的 item 的需求的話,那這篇文章的內容還是適用的! 我的部落格有一個 /now(最近在幹嘛)的頁面,目前的規劃是拿來寫過去幾個月在做的事情,可以讓有點時間沒見的朋友快速 catch up,有點像是把社群貼文一次更新到這個頁面的感覺。 如果有訂閱我的 RSS 的朋友可能有發現,這個頁面最近這兩個月更新的時候,RSS 都會有新的 item。就像這樣: 緣由 之所以這麼做,是因為我覺得除了第一次來的人們以外,應該很少人會去主動進去看,如果有更新的時候,也就沒什麼人會發現我更新了 ˊ_>ˋ 而靈感的來源,是來自 Sky 的 /now,他用的是一系列的 now + 更新時間 的文章來解決這個問題。但我比較偏好保持 /now 的 URL 一直不變,所以我才選擇在 RSS 上動手。 怎麼做到的? 我對 /now 的 RSS item 做了 2 件事情來達成我的目的: 讓 GUID 隨著頁面的「最後修改時間」更新而改變 => 這樣 RSS reader 就會把更新過的 item 當成一個新的 item 在標題附註一下更新的時間 => 不要訂閱者以為只是同樣的文章一直跳出來 如何客製化 RSS Feed 我用的 Hugo theme 是 Stack。要客製 RSS 的話,和要客製其他頁面的方式是一樣的,就是在 layouts 資料夾底下新增對應的檔案:layouts/_default/rss.xml。 內容則是把 原本 repo 內的 rss.xml 複製一份過來,以這個為基礎去改。 複製完之後,可以把先把 Hugo server 起起來,到 http://localhost:1313/index.xml 看看一切正不正常。也可以隨便改個地方看看是不是真的有吃到這裡的設定。 開改! GUID 首先是 GUID,我是這樣做的: 1 2 3 4 5 6 <guid> {{ .Permalink }} {{- if eq .Slug "now" -}} // add {{ .Lastmod.Format "20060102" | safeHTML }} // add {{- end -}} // add </guid> GUID 原本用的是 permalink。我在最後面再加上更新時間,就可以在更新的同時依舊保持唯一性。 但因為不是所有頁面或文章都需要做這件事情,所以我用 hardcode 的方式把 slug 是 now 的頁面撈出來。不然所有 item 的 GUID 全部都會一次被加上更新時間,導致在 RSS reader 把全部的文章當成新文章 XD 標題 標題也是用一樣的方式去標註: 1 2 3 4 5 6 <title> {{ .Title }} {{- if eq .Slug "now" -}} // add ({{ .Lastmod.Format "20060102" | safeHTML }} 更新) // add {{- end -}} // add </title> 這麼做的好處是:改的這些東西只會出現在 RSS Feed 中,不會影響到原本的頁面,讀者就不會在頁面看到一些為了實現功能而加入的不相關的東西 XD 結語 老實說,我其實不太確定我這樣的做法是不是對的,也不知道有沒有什麼 bug。但我也大概一個月更新一次而已,應該不太會打擾到大家,如果真的有什麼問題的話再跟我說 XD 也希望這個做法可以給你一些靈感,或者讓你決定開始寫 /now 頁面,如果能有更好的解決方案的話那就再好不過啦~
小十
入驻第1年
利用短代码在hugo博客中加入bilibili播放器插件
王叨叨在 开源Bilibili播放器插件 一文中,分享了一个Typecho插件,用于将Bilibili默认播放器替换为HTML5移动端播放器,并提供更多自定义选项。 基于他的源代码,考虑将其移植到Hugo中,并通过短代码来实现bilibili视频的调用。 短代码是Hugo的一项强大功能,允许我们在Markdown中嵌入HTML片段,实现复杂的布局和功能。 王叨叨的Typecho插件主要通过以下方式工作: 通过正则表达式匹配和替换Bilibili播放器iframe 提供丰富的配置选项(宽度、高度、自动播放、弹幕开关等) 替换默认播放器为HTML5移动端播放器,提升用户体验 在上述的基础上,借助AI实现了一定程度的高度自适应和自定义封面功能,为什么说是一定程度上的高度自适应,其实是新加入了ratio参数,即明确了视频宽高比,再根据视频宽高比,使用 padding-bottom 技巧实现真正的宽高比自适应。 示例 .bilibili-player-wrapper { position: relative; width: 100%; height: 0; padding-bottom: 56.25%; margin: 1rem 0; border-radius: 8px; overflow: hidden; background-color: #f5f5f5; } .bilibili-player-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; border-radius: 8px; } .bilibili-custom-cover { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 8px; z-index: 10; transition: opacity 0.3s ease; } .bilibili-custom-cover:hover .bilibili-play-button { transform: scale(1.1); background-color: #00a1d6; } .bilibili-play-button { width: 70px; height: 70px; background-color: rgba(0, 161, 214, 0.9); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; font-size: 24px; transition: all 0.3s ease; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); } .bilibili-play-button::after { content: "▶"; margin-left: 4px; } .bilibili-player-loading { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background-color: rgba(0, 0, 0, 0.7); color: white; font-size: 16px; z-index: 5; border-radius: 8px; } .bilibili-player-loading.hidden { display: none; } @media (max-width: 768px) { .bilibili-play-button { width: 60px; height: 60px; font-size: 20px; } } 视频加载中... function loadBilibiliPlayer(playerId) { const playerWrapper = document.getElementById(playerId); const cover = playerWrapper.querySelector('.bilibili-custom-cover'); const iframe = playerWrapper.querySelector('iframe'); const loading = playerWrapper.querySelector('.bilibili-player-loading'); if (iframe && iframe.hasAttribute('data-src')) { loading.classList.remove('hidden'); iframe.src = iframe.getAttribute('data-src'); iframe.style.display = 'block'; cover.style.opacity = '0'; iframe.onload = function() { loading.classList.add('hidden'); setTimeout(function() { cover.style.display = 'none'; }, 300); }; } } document.addEventListener('DOMContentLoaded', function() { const players = document.querySelectorAll('.bilibili-player-wrapper'); players.forEach(function(player) { const cover = player.querySelector('.bilibili-custom-cover'); const iframe = player.querySelector('iframe'); if (!cover && iframe && iframe.hasAttribute('data-src')) { iframe.src = iframe.getAttribute('data-src'); iframe.style.display = 'block'; } }); }); 具体实现 创建短代码文件 在Hugo项目的 layouts/shortcodes/ 目录下创建 bilibili.html 文件:
JN
入驻第1年
10 年前的我想都想不到的事情
10 年前的我想都想不到: 電子音樂 10 年前:視電子音樂為邪門歪道,不能接受任何人工合成的音色,就算鼓只是用了鼓機的音色也會是我的雷點。 10 年後:Electro Swing 超讚!Chiptune 愛死!Future Funk 一生推! DJ 10 年前:以為電子音樂就是 DJ 的全部,DJ 就是邪門歪道! 10 年後:學了 DJ、買了 controller,還有過幾次演出。 吉他 10 年前:幾乎每天都必須摸吉他,只要一天沒有彈,就覺得渾身不對勁。 10 年後:吉他在一年中的大部分時間都只是個擺飾。 音樂祭 10 年前:第一次去搖滾台中,想要把台灣的樂團都聽爆! 10 年後:搶票、訂住宿好麻煩喔 ._. 這個音樂祭跟上禮拜那個又有什麼不一樣? 女裝 10 年前:(啥都沒有) 10 年後:留了長髮、學會化妝、幾乎每天都穿女裝。 寫文章 10 年前:典型的工科腦,寫個超過 200 字的心得就要了我的命。 10 年後:架了兩個部落格,一個不小心就會寫超過 2000 字。 社群平台 10 年前:生活怎麼可能沒有 Facebook?我要趕快去註冊最潮的 Instagram! 10 年後:F___ you, Meta! 大家快來我的部落格追蹤 RSS~ 作業系統 10 年前:Windows 10 出了!我要趕快升級! 10 年後:新電腦先灌 Linux 再說。 飽睏 10 年前:放學吃完飯,還能再複習兩個小時的段考! 10 年後:吃飽飯後會先昏睡一個小時,什麼事情都做不了。 駕照 10 年前:我 18 歲就要考到駕照!(然後真的在 18 歲生日當天考到機車駕照) 10 年後:連汽車要怎麼發動都不知道。
阿川
入驻第1年
船游西湖,徒步河坊街
李懋和
入驻第1年
李懋和:财富是对认知的补偿,而不是对勤奋的嘉奖
这篇文章主要阐述了道学对于财富和认知的观点,强调认知的重要性以及其与财富的关联。文章指出,财富不是对勤奋的嘉奖,而是对认知的补偿。道学的认知观强调“明体达用”的通透,即既洞悉宇宙根本之“体”,又善用事物运行之“用”,这种立体认知才是财富生成的关键。 文章通过解析道学中“道法自然”的深层内核,指出高认知者能从“理”的层面解构财富逻辑。以明清徽商和民国时期荣氏家族为例,说明高认知者不仅知道市场之“理…
浩然
入驻第1年
MCP 是什么?它是如何工作的?
自 2022 年底 ChatGPT 横空出世以来,目前业界已涌现出多个优秀的大语言模型(Large Language Models,LLM),人们的日常生活和工作正在被大语言模型加速改变着。 大语言模型虽然很强大,但也有一些局限性,如:其知识被固定在训练结束之时,无法跟着当下动态的世界进行「自动更新」。所以,如果仅使用大语言模型训练好的数据解决问题,而不借助任何方式获取新的数据的话,会大大限制大语言模型的能力上限。
老刘
入驻第1年
以直报怨,怨未尽而心已定
《论语·宪问》中,有人问孔子: “以德报怨,何如?” 孔子答:“何以报德?以直报怨,以德报德。” 我对这句话,之前一直理解为以牙还牙,昨天看书时候又看到这个词,觉得以牙还牙,爽是爽了,但不应该是这样一种情况,很多时候,我们也无法做到如此的酣畅淋漓。那么“以直报怨”究竟是什么意思?难道报了怨,心里就真的没有怨气了吗? 一、“以直报怨”,不是让怨消失,而是让怨归位 “怨”来自不平。 当你被误解、被伤害、被欺骗时,心里自然会生怨。 因此,与其把怨恨留在心心里,不如给它找到一个出口。 “以直报怨”的“直”,指的是公正、理性、合宜。 不是以牙还牙,也不是逆来顺受, 而是用正直的方式让怨发泄出来。 不久前我们小区发生的事情。小区的车位到现在还没有建好,前段时间,开发商说要建车位,并开始售卖剩余的车位,可是价格确实比几年前卖的价格低的多的多。所以,之前买车位的业主就很难受,去退也没有,开发商根本没钱给你。用一个业主的话说就是: 意难平 意难平,就是怨 虽然最终也不了了之了,但是把这个怨表达出来给了开发商,也算是有个出口,可能有时候还是会觉得窝囊,但是能有什么办法呢。当今的大环境就是如此,车位还好点,算是赔了几万块钱,想想同一个小区的房子呢,最高价的时候14000,现在只有不到一万,所以,想想还有别人比你惨,心里是不是好受点。当了韭菜就要有韭菜的觉悟。 所以,怨未必能尽,但若能“直面”它,怨就不会蔓延成恨。 这就是孔子所谓的“直”。 二、“直”的意义,在于止怨而非无怨 人若被怨气缠久了,容易迷失是非。 有时怨的不是别人,而是自己心里的不甘。 “直”让人不被情绪牵着走, 它像一条沟渠,让积怨之水有路可出。 你可以反击,可以申辩,可以拒绝, 但不必怀恨。 以直报怨,不是清除怨气,而是防止怨气滋生。 怨止于直,这一刻,心定了。 三、“以德报怨”,是怨止之后的更高境界 老子说:“报怨以德。” 那是更高的修养,是怨尽心清之后的平和。 但若怨尚未平,便谈以德相报, 那只是压抑,不是化解。 所以孔子说,先“直”后“德”。 以“直”立界,以“德”安心。 先止怨,后化怨。先明理,后谈仁。 两人讲的,不是冲突的两条路,而是修心的步骤。 四、怨未尽,而心已定 “以直报怨”的真正意义在于: 怨或许仍在,但它已不乱人心。 它变成了经验、成了界限、成了智慧。 怨,是人之常情; 直,是理之常道; 德,是心之常明。 当怨有界,德才有根。 怨未尽,心却已定—— 这,便是孔子的智慧。 怨若未报,会伤己; 怨若乱报,会伤人; 以直报怨,则两者皆安。 怨未必无,但心可以静; 怨未必尽,但人可以明。 “以直报怨”,正是这份有界的清醒。
雅余
入驻第1年
《园冶》:世界最早的造园学名著
最近反复读的一本书,忍不住还是介绍一下。书中内容一是我喜欢的园林,二是书中很多极简、尊重自然的理念是我所爱。 […]
小十
入驻第1年
天津两日纪行
10月25—26日,趁着周末两天,去了一趟天津。 第一天 早上5点半起床,上午约10点30分,抵达天津西站。出站后,搭乘出租车前往位于滨江道步行街内的酒店。 滨江道步行街是天津市最为繁华的商业街之一,其历史可追溯至20世纪初,汇集了众多商场与老字号品牌。午餐选择了“醉喜楼津菜馆”,尝试了特色菜八珍豆腐与皮皮虾陷的锅贴,菜品份量充足。 传统八珍豆腐 25-10-25 · 9mm · f/2.8 · 1/100s · ISO64 · iPhone 皮皮虾扇贝锅贴 25-10-25 · 50mm · f/1.8 · 1/341s · ISO80 · iPhone 午后,首先参观了西开教堂。其全称为天主教西开总堂,始建于1916年,是天津市规模最大的罗马风貌建筑群,建筑风格为罗曼式。
扶苏
入驻第1年
弓守其道,射以观德
周日,2025年度苏州市大众体育联赛之射箭联赛如期举行。 我觉得有必要先介绍下这个大众体育联赛,总计84个赛事活动项目,覆盖足球、篮球、羽毛球、飞盘、滑板等传统与新兴项目,并将赛事场景延伸至姑苏古巷、金鸡湖畔、太湖湾等城市地标,项目面对人群...阅读更多 Source
阿川
入驻第1年
打造全新 Artalk 评论界面
JN
入驻第1年
2025 去東京玩!飛機、住宿篇(圖多)
上個月我去日本東京玩了一趟,結果一直沒有時間整理照片。最近終於把事情忙得差不多了,就來把照片都整理一下發出來~ 其實我去年我就去過一次東京了。今年會再去最大的原因是因為臨時想到要把特休用掉,也可以把公司的旅遊補助請一請。因為決定得很臨時,也沒有什麼時間慢慢研究可以去哪裡,剛好看到 TOKYO CALLING 的時間還不錯,就直接決定要去了 XD 廢話不多說,進入正題! 飛機 上次去東京我搭的是日航(JAL),這次也想一樣從台北松山機場飛(離我住的地方很近很方便)、羽田落(進市區快),但又不想花太多錢在機票,所以這次搭的是全日空(ANA)! 我去的時間剛好在中秋節之前,所以價格還算不錯!來回 NTD $11000 左右!雖然比起廉航還是不算便宜,但不用從台北拉著行李去桃園,到了東京要進市區也方便。我覺得多花這麼一點點錢,享受到傳統航空的服務,我覺得是很划算的! 但時間就不是非常理想,週日中午去、隔週二一大早回來。不過晚一天的早上去、或是提前一天晚上回來,價格都很不漂亮,甚至比多住一、兩個晚上還貴,那我還不如在那邊多住幾天!這也是為什麼這次的旅程拉得那麼長 XD 去程 上次日航的內裝很有年代感,ANA 的則是蠻現代的,除了…遙控器…,看來這是日本飛機的標配了。 上次日航的飛機餐讓我很驚豔,所以我很好奇 ANA 的餐如何。 我這個應該是日式豬肉飯,整體只能說一般般,除了有筷子和飯後綠茶(沒拍到)之外,沒什麼比較值得拿出來說的地方。 落地後 ANA 在羽田落地停靠的是第二航廈,而不是一般國際線的第三航廈,所以外國人不多,入境超級快! 但是 Welcome Suica 只有在第三航廈賣,所以我還花了一點時間坐接駁車過去(超遠~),買到了 Suica 才能去搭 monorial 進市區。 羽田第二航廈 回程的時候一樣也是在第二航廈,這裡根本就是 ANA 的天下,到處都是 ANA 的機器,空橋停靠的也幾乎都是 ANA 的飛機! 比較意外的是,回程的登機門上機的時候的指示很不清楚,跟聯合航班的搞在一起了,我完全搞不清楚到底輪到我上飛機了沒(也有可能是我沒帶腦)。 也可能因為是少數的國際線吧,這次就沒有空橋,要搭接駁車上飛機。 回程 因為回程的飛機餐是在日本做的,所以 ANA 還有扳回一城的機會。 回程的這個親子丼,雖然有比去程的好一些,但還是沒什麼值得拿出來說的地方。 結論就是:ANA 的飛機餐非常一般,不需要有太多期待,就是一些可以填飽肚子的食物,是無法和長榮、日航之類的旗艦航空公司比的。 到是這個生可樂,也許因為是罐裝的,一直到我喝完的時候氣都還很夠!不會像一般瓶裝倒出來的,在高空很快就沒氣了。 飯店 這次我們在東京住在池袋的 HOTEL MYSTAYS,在都電荒川線向原站的旁邊,走路去 JR 山手線大塚站則是大概 10 分鐘。 我是在 Agoda 上訂房間的,飯店方也有主動和我聯絡,應該不會出現預訂漏接那種烏龍。當然,和他們用英文溝通也完全沒有問題! 房間 MYSTAYS 的價格比起 APA(日本的超大連鎖飯店)再便宜一些些,雖然沒有像 APA 又新又有超大電視,但我覺得也沒什麼好挑剔的,畢竟也真的超便宜了。我們兩人在那邊住了 9 個晚上,平均一個人才花不到 NTD $9000 ! 房間的冷氣是分離式的,可以自由調整房間裡面的溫度。廁所和浴室我沒拍到,但就是和 APA 差不多的那種,有浴缸、洗臉盆、馬桶的一般浴室。 廚房 重點是!他們有的房間有廚房!因為中秋節也快到了,我們就在房間吃燒肉!餐具也都是可以免費借用,非常讚! 自助服務 另一個我覺得 MYSTAYS 很棒的地方,就是所有的備品都是自己去大廳取用,不會因為每天的配送造成很多浪費! 但垃圾也需要自己拿去垃圾場,當然也沒有像 APA 會強制進房間整理的規定。 再附上一些飯店看出去的景色: 整體來說,我覺得在 MYSTAYS 住的那幾天蠻滿意的!價格便宜、該有的東西也都有,沒什麼大問題! 如果真的要挑缺點的話,就是從 JR 車站走過去有一大段的上坡。但對我這個不介意走路的人來說,是一個可以好好觀察路上異國風情的好機會~
阿川
入驻第1年
西湖阅读初体验
陈仓颉
入驻第1年
Group Chats Could Be Overwhelming
Ever since instant messaging was invented, group chats […]
姓王者
入驻第1年
1024 重要的日子
1024 重要的日子今天又是一年一度的 中国程序员节,值此之际,祝各位同志节日快乐,身体健康!麦当劳更重要的是,今天有麦当劳活动!,程序员节快乐!巨无霸三件套¥29.9! 10月24日-26日我发现答题太没意思了,所以我选择了github认证,这个挑...
阿川
入驻第1年
时隔四年,晨跑环西湖
小十
入驻第1年
解决林木木老师哔哔广场中同一Memos实例下多用户头像昵称显示错误问题
问题描述 非常感谢 林木木 老师编写的 哔哔广场 ,日常用于调取Memos网站的内容,并实现了同步订阅其他Memos用户及发表 memos 等功能。 但是,我这里有一个较为小众的需求,就是在使用 Memos 广场功能时,如下图界面: 当多个用户来自同一个 Memos 实例时,其动态内容能够正常显示,但用户信息(头像和昵称)却全部显示为同一个用户的信息。 例如,在我的订阅列表中: 小十 (ID: 1, 头像: avatar.png) 泥鳅胡子 (ID: 3, 头像: myh.jpg) 上述两个用户都使用同一个 Memos 实例 https://memos.xiaoten.com,但在广场模式下,所有动态都显示为泥鳅胡子的头像和昵称,即使这些动态实际上是小十发布的。 原因分析 主要原因 用户信息映射逻辑未覆盖这种特殊情况,在原始的代码实现中: 获取用户动态时,代码使用了同一个 Memos 实例下的第一个用户信息来覆盖所有用户的动态信息。 最初使用 creatorName 作为映射键,但当多个用户有相同的显示名时会导致冲突。 在合并用户信息和动态数据时,属性覆盖的顺序问题,会使用户信息被动态数据中的空值覆盖。 技术细节 在 Promise 内部处理动态数据时,原始代码使用了 matchedMemo 而不是当前用户 u 的信息: // 原因 for (let key in matchedMemo) { if (matchedMemo.hasOwnProperty(key)) { item[key] = matchedMemo[key]; } } 剩余 1 行代码 展开剩余代码 这会使同一个 Memos 实例下的所有用户都使用了第一个匹配的用户信息。 解决方式 1. 修改 Promise 内部的用户信息赋值 在获取每个用户的动态时,使用当前用户 u 的信息而不是 matchedMemo:

© 2026 好站网-HaoZhan.Wang V1.9 版权所有,正在试运行中! 本站由 Zhou's Notes 强力支持!

苏ICP备19065220号-4 公安备案 苏公网安备32100302011680号 萌ICP备20269980号 茶ICP备2026050346号
本站数据 2026年报 版本历史 小黑屋 关于本站 统计代码