-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
141 lines (140 loc) · 9.97 KB
/
Copy pathindex.html
File metadata and controls
141 lines (140 loc) · 9.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<!DOCTYPE html>
<html lang="zh-CN" data-lang="zh" data-title-zh="初心 - 耿泽浩" data-title-en="初心 - Zehao Geng" data-desc-zh="Stay hungry, Stay foolish. 耿泽浩的个人主页与技术笔记。" data-desc-en="Stay hungry, Stay foolish. Zehao Geng's personal homepage and technical notes.">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#E8F0F3" />
<meta name="description" content="Stay hungry, Stay foolish. 耿泽浩的个人主页与技术笔记。" />
<meta property="og:title" content="初心 - 耿泽浩" />
<meta property="og:description" content="Stay hungry, Stay foolish. 耿泽浩的个人主页与技术笔记。" />
<meta property="og:type" content="website" />
<title>初心 - 耿泽浩</title>
<script>
(function () {
try {
var saved = localStorage.getItem("chuxin-lang");
var lang = saved === "en" ? "en" : "zh";
var root = document.documentElement;
root.setAttribute("data-lang", lang);
root.setAttribute("lang", lang === "en" ? "en" : "zh-CN");
} catch (e) {}
})();
</script>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700&family=IBM+Plex+Mono:wght@400;500&family=Noto+Sans+SC:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/css/site.css?v=20260727" />
</head>
<body>
<div class="site-shell">
<header class="site-nav">
<div class="wrap site-nav__inner">
<a class="brand" href="/">
<span class="brand__mark">初心</span>
<span class="brand__dot" aria-hidden="true"></span>
</a>
<div class="nav-right">
<button class="nav-toggle" type="button" aria-label="Menu" aria-expanded="false">
<span></span><span></span><span></span>
</button>
<ul class="nav-links">
<li>
<a href="/" class="is-active">
<span data-lang="zh">首页</span>
<span data-lang="en">Home</span>
</a>
</li>
<li>
<a href="/writings/">
<span data-lang="zh">写作</span>
<span data-lang="en">Writings</span>
</a>
</li>
<li>
<a href="/about/">
<span data-lang="zh">关于</span>
<span data-lang="en">About</span>
</a>
</li>
<li><a href="https://github.com/runninggump" target="_blank" rel="noopener">GitHub</a></li>
</ul>
<button class="lang-switch" type="button" aria-label="Switch language">
<span data-lang="zh">EN</span>
<span data-lang="en">中文</span>
</button>
</div>
</div>
</header>
<main>
<section class="hero">
<div class="hero__atmosphere" aria-hidden="true"></div>
<div class="wrap hero__grid">
<h1 class="hero__brand" aria-label="初心">
<span>初</span><span>心</span>
</h1>
<div class="hero__copy">
<p class="hero__kicker">Personal notes · RunningGump</p>
<h2 class="hero__title">
<span data-lang="zh">把做过的事写清楚,把想通的理记下来。</span>
<span data-lang="en">Write down what I built. Keep the reasons I figured out.</span>
</h2>
<p class="hero__desc">
<span data-lang="zh">耿泽浩的长期主页。记录爬虫、数据、工程实践与搭建过程中的具体问题——不为热闹,只为不丢初心。</span>
<span data-lang="en">Zehao Geng's long-term homepage. Notes on crawlers, data work, engineering practice, and the messy details of shipping—less noise, more 初心.</span>
</p>
<div class="cta-row">
<a class="btn btn-primary" href="/writings/">
<span data-lang="zh">阅读写作</span>
<span data-lang="en">Read writings</span>
</a>
<a class="btn btn-ghost" href="/about/">
<span data-lang="zh">关于我</span>
<span data-lang="en">About me</span>
</a>
</div>
</div>
</div>
</section>
<section class="section">
<div class="wrap">
<div class="section__head reveal">
<div>
<p class="section__label">Writings</p>
<h2 class="section__title">
<span data-lang="zh">近期笔记</span>
<span data-lang="en">Recent notes</span>
</h2>
<p class="section__desc">
<span data-lang="zh">从终端复用、比赛复盘到爬虫与验证码——按时间排列的实践记录。</span>
<span data-lang="en">From terminal multiplexing and contest write-ups to crawlers and captchas—practice notes in chronological order.</span>
</p>
</div>
<a class="btn btn-ghost" href="/writings/">
<span data-lang="zh">全部文章</span>
<span data-lang="en">All posts</span>
</a>
</div>
<ul class="write-list">
<li class="write-item"><a href="/2019/05/07/Tmux的基本使用/"><div class="write-item__main"><h3 class="write-item__title"><span data-lang="zh">Tmux的基本使用</span><span data-lang="en">Getting Started with Tmux</span></h3><p class="write-item__excerpt"><span data-lang="zh">Tmux是一个优秀的终端复用软件,可以在一个终端窗口中运行多个终端会话,并支持后台运行与按需接入。</span><span data-lang="en">Tmux is a terminal multiplexer for running multiple sessions in one window, with detach/reattach when you need it.</span></p><div class="write-item__tags"><span class="write-tag"><span data-lang="zh">Tmux</span><span data-lang="en">Tmux</span></span></div></div><time class="write-item__date" datetime="2019-05-07">2019-05-07</time><span class="write-item__arrow" aria-hidden="true">→</span></a></li>
<li class="write-item"><a href="/2019/01/13/住房月租金预测大数据赛总结/"><div class="write-item__main"><h3 class="write-item__title"><span data-lang="zh">住房月租金预测大数据赛总结</span><span data-lang="en">Rental Price Prediction Contest Write-up</span></h3><p class="write-item__excerpt"><span data-lang="zh">第一次参加数据分析比赛的复盘:流程、收获,以及改进后在 A 榜冲到第 3 名的模型尝试。</span><span data-lang="en">A first data contest retrospective: the pipeline, lessons learned, and a model that later reached 3rd on leaderboard A.</span></p><div class="write-item__tags"><span class="write-tag"><span data-lang="zh">数据分析</span><span data-lang="en">Data Analysis</span></span></div></div><time class="write-item__date" datetime="2019-01-13">2019-01-13</time><span class="write-item__arrow" aria-hidden="true">→</span></a></li>
<li class="write-item"><a href="/2018/12/05/成功解决在hexo中无法显示数学公式的问题/"><div class="write-item__main"><h3 class="write-item__title"><span data-lang="zh">成功解决在hexo中无法显示数学公式的问题</span><span data-lang="en">Fixing Math Rendering in Hexo</span></h3><p class="write-item__excerpt"><span data-lang="zh">Hexo 默认渲染数学公式容易出错;更换 Markdown 引擎并完成配置后恢复正常显示。</span><span data-lang="en">Default Hexo math rendering often breaks; switching the Markdown engine and config fixed the formulas.</span></p><div class="write-item__tags"><span class="write-tag"><span data-lang="zh">Hexo</span><span data-lang="en">Hexo</span></span></div></div><time class="write-item__date" datetime="2018-12-05">2018-12-05</time><span class="write-item__arrow" aria-hidden="true">→</span></a></li>
<li class="write-item"><a href="/2018/11/19/破解含语序问题的点击验证码/"><div class="write-item__main"><h3 class="write-item__title"><span data-lang="zh">破解含语序问题的点击验证码</span><span data-lang="en">Cracking Sequence Click Captchas</span></h3><p class="write-item__excerpt"><span data-lang="zh">针对按语序点选汉字的验证码:YOLO 定位、切割、分类识别,再组成点击序列。</span><span data-lang="en">For Chinese click-captchas in reading order: YOLO detection, cropping, classification, then building the click sequence.</span></p><div class="write-item__tags"><span class="write-tag"><span data-lang="zh">深度学习</span><span data-lang="en">Deep Learning</span></span></div></div><time class="write-item__date" datetime="2018-11-19">2018-11-19</time><span class="write-item__arrow" aria-hidden="true">→</span></a></li>
<li class="write-item"><a href="/2018/11/16/体验活动的生命周期/"><div class="write-item__main"><h3 class="write-item__title"><span data-lang="zh">体验活动的生命周期</span><span data-lang="en">Exploring the Android Activity Lifecycle</span></h3><p class="write-item__excerpt"><span data-lang="zh">通过小实验观察 Activity 四种状态与七个回调,弄清页面切换时系统如何调度。</span><span data-lang="en">A small experiment on Activity states and the seven callbacks—how Android schedules screens as you navigate.</span></p><div class="write-item__tags"><span class="write-tag"><span data-lang="zh">Android</span><span data-lang="en">Android</span></span></div></div><time class="write-item__date" datetime="2018-11-16">2018-11-16</time><span class="write-item__arrow" aria-hidden="true">→</span></a></li>
</ul>
</div>
</section>
</main>
<footer class="site-footer">
<div class="wrap site-footer__inner">
<p>
© 2026 初心 ·
<span data-lang="zh">耿泽浩</span>
<span data-lang="en">Zehao Geng</span>
</p>
<p><a href="mailto:gengzehao@pku.edu.cn">gengzehao@pku.edu.cn</a></p>
</div>
</footer>
</div>
<script src="/js/site.js"></script>
</body>
</html>