<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Zaxon</title>
        <link>https://blog.harumonia.moe/</link>
        <description>lazy</description>
        <lastBuildDate>Tue, 14 Jul 2026 11:04:25 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>Zaxon</title>
            <url>https://harumona-blog.oss-cn-beijing.aliyuncs.com/blog/Ocabe.webp</url>
            <link>https://blog.harumonia.moe/</link>
        </image>
        <copyright>CC BY-NC-SA 4.0 2026 © harumonia</copyright>
        <atom:link href="https://blog.harumonia.moe/feed.xml" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[针对当前机场节点不稳定的一个方案-为机场订阅添加一层 VPS 中转]]></title>
            <link>https://blog.harumonia.moe/posts/2026-07-14-vps-proxy</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-07-14-vps-proxy</guid>
            <pubDate>Tue, 14 Jul 2026 18:39:13 GMT</pubDate>
            <content:encoded><![CDATA[<h1>用一台美区 VPS，给机场订阅套一个固定出口</h1>
<h2>问题背景</h2>
<p>目前笔者使用的是 机场订阅 这样的一个 🪜 方案，但是今年上半年服务变得非常地不稳定，在相关的技术论坛上，这似乎是一个普遍的现</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-07-14-vps-proxy" target="_blank">https://blog.harumonia.moe/posts/2026-07-14-vps-proxy</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[大量数据表下通过 dify + 简单 LLM 进行取数]]></title>
            <link>https://blog.harumonia.moe/posts/2026-07-10-nl-to-sql</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-07-10-nl-to-sql</guid>
            <pubDate>Thu, 09 Jul 2026 20:52:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇主要是分享一下在 大量数据表 下通过 dify + 简单 LLM , 实现 自然语言 -&gt; SQL 查询的一个实现思路.</p>
<p>这个思路的实现门槛较低, 我们所有需要做的只是：</p>
<ol>
<li>配置一个</li>
</ol>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-07-10-nl-to-sql" target="_blank">https://blog.harumonia.moe/posts/2026-07-10-nl-to-sql</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[从 GitHub Pages 到 Cloudflare Pages：一次静态博客部署迁移]]></title>
            <link>https://blog.harumonia.moe/posts/2026-06-28-migrate-github-to-cloudflare-pages</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-06-28-migrate-github-to-cloudflare-pages</guid>
            <pubDate>Sun, 28 Jun 2026 11:11:41 GMT</pubDate>
            <content:encoded><![CDATA[<p>这次把博客的部署链路从 GitHub Pages 迁到了 Cloudflare Pages。</p>
<p>说是从 GitHub 迁移到 Cloudflare，其实更准确的说法是：GitHub 继续作为代码仓库和触发源，真正负责构建、发布、域名接入、缓存和 TLS 的部分交给 Cloudflare Pages。这样一来，GitHub 不再承担静态站点托管的职责，而是回到它更擅长的位置：保存源码、记录变更、触发部署。</p>
<p>这篇记录一下迁移的背景、具体改动、部署时踩到的坑，以及迁移之后能得到什么好处。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-06-28-migrate-github-to-cloudflare-pages" target="_blank">https://blog.harumonia.moe/posts/2026-06-28-migrate-github-to-cloudflare-pages</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[关于 SDD 的一些分享]]></title>
            <link>https://blog.harumonia.moe/posts/2026-06-15-sdd-in-practice</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-06-15-sdd-in-practice</guid>
            <pubDate>Mon, 15 Jun 2026 10:00:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>从 2025 年下半年开始，我陆续在真实项目里实践 SDD（Spec-Driven Development，规格驱动开发）。其中有两个很有代表性的项目：一个是把历史悠久（Tornado + Jinja2）的某历史平台重构到当前技术栈，另一个是开发面向非研发同学、承载多种业务需求的某新平台。</p>
<p>这两个项目恰好代表了两种完全不同的开发场景：某历史平台是典型的棕地项目，已有业务复杂、历史约束很多，重构时最重要的是不要破坏原有逻辑；某新平台则更接近绿地项目，需要从零开始梳理需求、设计边界，并控制项目在快速演进中的复杂度。</p>
<p>SDD 确实解决了过去使用 AI 开发时遇到的许多问题。但随着实践深入，我也逐渐意识到：SDD 并不是写几份 spec、plan 和 tasks 文档就结束了。它真正要解决的，是如何让 AI 在长时间、跨会话、复杂代码库的开发过程中，始终理解我们的意图、遵守系统约束，并且能够证明自己的工作是正确的。</p>
<p>这篇文章想结合两个项目的实践，聊一聊我对 SDD 的理解、它目前的局限，以及它接下来可能演进的方向。</p>
<p>本文所说的 SDD，是一种以<strong>可验证规格</strong>作为开发主线的工作方式。规格不只描述需求，还应包含业务约束、非目标、验收条件和验证方式，并持续参与任务拆分、实现、审查与交付。它与 TDD、BDD、ADR/RFC、API-first 等方法并不冲突：这些方法分别提供行为验证、决策记录和接口契约，SDD 则负责把它们组织到同一条从意图到交付的主线上。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-06-15-sdd-in-practice" target="_blank">https://blog.harumonia.moe/posts/2026-06-15-sdd-in-practice</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Codex 调用 Notion 失败：从 wham/apps 报错定位网络链路]]></title>
            <link>https://blog.harumonia.moe/posts/2026-06-10-codex-notion-network-failure-solution</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-06-10-codex-notion-network-failure-solution</guid>
            <pubDate>Wed, 10 Jun 2026 16:05:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>最近在 Codex 里调用 Notion 插件时遇到一个容易误判的问题：Notion 搜索失败，报错指向的却不是页面权限、数据库或查询语法，而是 Codex App 与插件 worker 之间的传输链路。</p>
<p>典型错误如下：</p>
<pre><code class="language-text">HTTP request failed: https://chatgpt.com/backend-api/wham/apps
</code></pre>
<p>这个报错看起来像 Notion 不可用，但从失败地址判断，请求很可能还没有进入 Notion 查询逻辑，而是卡在了 Codex / ChatGPT 的插件通道上。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-06-10-codex-notion-network-failure-solution" target="_blank">https://blog.harumonia.moe/posts/2026-06-10-codex-notion-network-failure-solution</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[用 Sentry Skills 完成一次线上错误排查]]></title>
            <link>https://blog.harumonia.moe/posts/2026-05-20-sentry-skills-troubleshooting</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-05-20-sentry-skills-troubleshooting</guid>
            <pubDate>Wed, 20 May 2026 17:00:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>后端服务接入 Sentry 或 GlitchTip 后，线上错误通常并不缺数据，真正缺的是一条稳定的排查路径：如何从 issue 进入，拿到事件详情、请求上下文、breadcrumbs 和异常栈，再回到代码里验证根因。</p>
<p>这次实验的重点不是 Grafana。关键证据全部来自 Sentry Skills 对 GlitchTip 事件的读取，因此这里记录一套通过 Sentry Skills 独立完成错误排查的方法。Grafana MCP 的使用可以参考 <a href="/posts/grafana-mcp-usage/">用 Grafana MCP 排查 Redis 配置问题与迭代监控</a>。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-05-20-sentry-skills-troubleshooting" target="_blank">https://blog.harumonia.moe/posts/2026-05-20-sentry-skills-troubleshooting</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[用 Grafana MCP 排查 Redis 配置问题与迭代监控]]></title>
            <link>https://blog.harumonia.moe/posts/2026-05-20-grafana-mcp-usage</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-05-20-grafana-mcp-usage</guid>
            <pubDate>Wed, 20 May 2026 16:30:33 GMT</pubDate>
            <content:encoded><![CDATA[<p>最近借 Grafana MCP 做了两次排查。一次是定位内容采集链路里的 Redis 配置问题，另一次是从 Playwright 服务的 zombie 进程告警出发，补齐监控面板和告警规则。</p>
<p>这两次经历给我的感觉是，Grafana MCP 的价值不只是“让大模型能查日志”，而是把日志、指标、代码和部署配置放到同一个排查上下文里。问题不是靠猜出来的，而是沿着 task_id、trace_id、stacktrace 和 Prometheus 指标一步一步收窄出来的。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-05-20-grafana-mcp-usage" target="_blank">https://blog.harumonia.moe/posts/2026-05-20-grafana-mcp-usage</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Vibe coding - 常见问题、工具扩展与持续迭代]]></title>
            <link>https://blog.harumonia.moe/posts/2026-03-04-vibe-coding-6</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-03-04-vibe-coding-6</guid>
            <pubDate>Wed, 04 Mar 2026 23:17:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>前几篇介绍了模型、Prompt、Rules、Cursor 工作模式、注意事项与项目重构. 最后一篇记录一些使用中的常见问题、仍然值得使用的扩展工具, 以及如何量化和迭代自己的 Vibe Coding 工作流.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-03-04-vibe-coding-6" target="_blank">https://blog.harumonia.moe/posts/2026-03-04-vibe-coding-6</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Vibe coding - 项目重构与 AI 工作流]]></title>
            <link>https://blog.harumonia.moe/posts/2026-03-02-vibe-coding-5</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-03-02-vibe-coding-5</guid>
            <pubDate>Mon, 02 Mar 2026 23:17:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>项目重构是检验 Vibe Coding 能力的典型场景. 它不只要求模型生成新代码, 还要求模型理解旧逻辑、识别技术债务、保持业务行为并完成验证.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-03-02-vibe-coding-5" target="_blank">https://blog.harumonia.moe/posts/2026-03-02-vibe-coding-5</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Vibe coding - 注意事项与进阶技巧]]></title>
            <link>https://blog.harumonia.moe/posts/2026-02-28-vibe-coding-4</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-02-28-vibe-coding-4</guid>
            <pubDate>Sat, 28 Feb 2026 23:17:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>掌握 Prompt、Rules 和 Agent 的基本用法之后, Vibe Coding 的主要问题就不再是“AI 能不能写代码”, 而是如何让它稳定地产出符合项目实际约束的代码, 同时避免错误被快速放大.</p>
<p>这一篇集中记录使用过程中的注意事项与进阶技巧.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-02-28-vibe-coding-4" target="_blank">https://blog.harumonia.moe/posts/2026-02-28-vibe-coding-4</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Vibe coding - Cursor 工作模式与上下文]]></title>
            <link>https://blog.harumonia.moe/posts/2026-02-26-vibe-coding-3</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-02-26-vibe-coding-3</guid>
            <pubDate>Thu, 26 Feb 2026 23:17:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>Cursor 不只是一个带聊天窗口的编辑器. 它把补全、问答、代码编辑、任务规划和工具调用放在同一个开发环境中. 用好这些模式的关键不是让 Agent 承担所有工作, 而是根据任务规模选择合适的交互方式.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-02-26-vibe-coding-3" target="_blank">https://blog.harumonia.moe/posts/2026-02-26-vibe-coding-3</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Vibe coding - Rules 与 Skills]]></title>
            <link>https://blog.harumonia.moe/posts/2026-02-24-vibe-coding-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-02-24-vibe-coding-2</guid>
            <pubDate>Tue, 24 Feb 2026 23:17:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>上一篇介绍了 Vibe Coding 的基础: 模型、提示词与上下文. 接下来进一步了解 IDE 中一种特殊的提示词, 即 Rule.</p>
<p>规则的意义在于通过持久化的项目约束将 Agent 特化. 过去需要先说“你是一个 Python 专家, 精通……”, 现在可以将技术栈、代码规范和项目结构写入规则, 日常只需要描述具体任务.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-02-24-vibe-coding-2" target="_blank">https://blog.harumonia.moe/posts/2026-02-24-vibe-coding-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Vibe coding - Model]]></title>
            <link>https://blog.harumonia.moe/posts/2026-02-22-vibe-coding-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-02-22-vibe-coding-1</guid>
            <pubDate>Sun, 22 Feb 2026 23:17:47 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇旨在介绍 大模型技术 在 日常工作(主要是开发) 中的使用.</p>
<h2>引言</h2>
<p>在这个月初参加的一次 AI 分享活动中, 有提到一个有趣的 vibe coding 工作效率提升的调查统计, 结</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-02-22-vibe-coding-1" target="_blank">https://blog.harumonia.moe/posts/2026-02-22-vibe-coding-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[人生如梦, 一尊还酹江月 - 2026]]></title>
            <link>https://blog.harumonia.moe/posts/2026-02-19-luna-horse-1-3</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2026-02-19-luna-horse-1-3</guid>
            <pubDate>Thu, 19 Feb 2026 22:20:58 GMT</pubDate>
            <content:encoded><![CDATA[<h2>人生如梦, 一尊还酹江月</h2>
<p>久违的小结, 小酌数瓶, 感觉并不是很影响思路.</p>
<p>2025年做的最大的一件事情就是买了辆车, 一直到前年我都很抗拒买车, 因为我觉得一年的工资换取这种资产并不值</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2026-02-19-luna-horse-1-3" target="_blank">https://blog.harumonia.moe/posts/2026-02-19-luna-horse-1-3</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Kimi 砍价分享-如何用「混淆Prompt」把Kimi砍到自我怀疑]]></title>
            <link>https://blog.harumonia.moe/posts/2025-11-17-kimi-discount</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2025-11-17-kimi-discount</guid>
            <pubDate>Mon, 17 Nov 2025 21:36:54 GMT</pubDate>
            <content:encoded><![CDATA[<h2>TL;DR</h2>
<p>本文记录了一场与Kimi&quot;砍价守门员&quot;的攻防战。核心策略是通过「混淆Prompt」让AI同时扮演&quot;夸夸生成器&quot;与&quot;守门员&quot;双重角色，使其在自我迭代中偏离本职防御工作，最终好感度</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2025-11-17-kimi-discount" target="_blank">https://blog.harumonia.moe/posts/2025-11-17-kimi-discount</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[C3. Storage and Retrieval (Part 2)]]></title>
            <link>https://blog.harumonia.moe/posts/2023-01-18-ddia-s3-p2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2023-01-18-ddia-s3-p2</guid>
            <pubDate>Wed, 15 Feb 2023 15:56:39 GMT</pubDate>
            <content:encoded><![CDATA[<h2>Transaction Processing or Analytics?</h2>
<p><em>transaction</em> : 在早期的商业数据处理中, 数据库的写入通常与一次商业交易(commercial t</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2023-01-18-ddia-s3-p2" target="_blank">https://blog.harumonia.moe/posts/2023-01-18-ddia-s3-p2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[扁舟一叶向孤城, 浊酒半壶见死生]]></title>
            <link>https://blog.harumonia.moe/posts/2023-01-31-my-2022</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2023-01-31-my-2022</guid>
            <pubDate>Tue, 31 Jan 2023 20:07:31 GMT</pubDate>
            <content:encoded><![CDATA[<p>不知不觉有长了一岁, 在不想变成庸庸碌碌的大众的情绪下逐渐融入其中, 这大概就是去岁的一个侧面吧.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2023-01-31-my-2022" target="_blank">https://blog.harumonia.moe/posts/2023-01-31-my-2022</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[alfred 工作流开发]]></title>
            <link>https://blog.harumonia.moe/posts/2022-11-15-alfred-workflow-dev</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-11-15-alfred-workflow-dev</guid>
            <pubDate>Tue, 15 Nov 2022 15:12:24 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p><a href="https://www.alfredapp.com/alfred-5-whats-new/">Alfred</a> 是一款 <em>MacOS</em> 上用户基数较大的软件, 笔者主要是用它来取代原生的 <em>聚焦搜索</em>, 除此之外, 最近开始研究它的 <strong>工作流(workflow)</strong> 相关的功能.</p>
<p>本篇就是实际展示一下如何开发一个 workflow. 使用的脚本语言是 <em>Python</em> , 不过实际上任何脚本语言都可以完成开发工作.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-11-15-alfred-workflow-dev" target="_blank">https://blog.harumonia.moe/posts/2022-11-15-alfred-workflow-dev</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[2022-11-14-pytest_mock_counter]]></title>
            <link>https://blog.harumonia.moe/posts/2022-11-14-pytest-mock-counter</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-11-14-pytest-mock-counter</guid>
            <pubDate>Tue, 15 Nov 2022 11:20:44 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>本篇的目的是在 <code>Python</code> 的 Test 框架中添加一个 <strong>mock 函数使用计数器</strong> 的逻辑. 该计数器的目的是, 在调用第三方api接口时, 计算某一个流程中的调用次数是否合理. 在流程(或调用关系)比较复杂的时候实用性较高.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-11-14-pytest-mock-counter" target="_blank">https://blog.harumonia.moe/posts/2022-11-14-pytest-mock-counter</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[C3. Storage and Retrieval (更新中)]]></title>
            <link>https://blog.harumonia.moe/posts/2022-10-10-C3-Storage-and-Retrieval</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-10-10-C3-Storage-and-Retrieval</guid>
            <pubDate>Mon, 10 Oct 2022 17:22:24 GMT</pubDate>
            <content:encoded><![CDATA[<h2>Data Structure That Power Your Database</h2>
<p>最简单的数据库是什么样子的?</p>
<pre><code class="language-bash">#!/bin/bash 
db_set () {     
 echo &quot;$1,$2&quot; &gt;&gt; database 
} 

db_get () {     
 grep &quot;^$1,&quot; database | sed -e &quot;s/^$1,//&quot; | tail -n 1 
}
</code></pre>
<p>如上所示, 我们完成了一个最简单的 <strong>kv 数据库</strong>. 它的工作原理是: <em>db_set</em> 在文件末尾追加一个 kv 对; 如果对某一个 key 进行更新, 那么新的记录会继续追加写入文件, 而非覆盖; <em>db_get</em> 查询到最后(即最新)一条 key , 然后返回 value.</p>
<p>这个数据库的<strong>写</strong>效率极高 [ $O(1)$ ], 因为它单纯的就是向文件的末尾进行 <code>append</code> 操作. 但是代价是它的<strong>读</strong>效率非常低 [ $O(n)$ ].</p>
<p>为了解决读效率低的问题, 可以使用 <code>索引</code> , 索引本质上是一个依附于主体数据的额外的数据结构. 它可以作为一个整体地被添加或者删除. 但是索引又会引发一个新的问题, 索引的变化依托于 <strong>写(write)</strong> 操作, 这意味着每次写都需要额外的一部分性能来更新这个数据结构, 如果数据结构过于复杂, 则会拖慢影响写的效率.</p>
<p>本节主要就是围绕这些索引结构及其演进来展开.</p>
<ul>
<li>Hash Index</li>
<li>SSTable</li>
<li>...</li>
</ul>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-10-10-C3-Storage-and-Retrieval" target="_blank">https://blog.harumonia.moe/posts/2022-10-10-C3-Storage-and-Retrieval</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[2022.4~.7 生活小结]]></title>
            <link>https://blog.harumonia.moe/posts/2022-07-17-2022-4-7</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-07-17-2022-4-7</guid>
            <pubDate>Sun, 17 Jul 2022 21:17:19 GMT</pubDate>
            <content:encoded><![CDATA[<h1>2022 4~7</h1>
<h2>猫咪</h2>
<p>第一次选择整租一套房子,60多平的空间住一个人,让习惯了10平左右狭小居室的的我感到无比的空旷,于是在某一天的冲动之下,我入手了一只银渐层.</p>
<p>老实说我感觉我</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-07-17-2022-4-7" target="_blank">https://blog.harumonia.moe/posts/2022-07-17-2022-4-7</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Django 生成 swagger 描述文件]]></title>
            <link>https://blog.harumonia.moe/posts/2022-06-24-django2swagger</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-06-24-django2swagger</guid>
            <pubDate>Fri, 24 Jun 2022 21:04:18 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇主要是讲如何从 Django Api 生成出 swagger 描述文件. 它具有如下的特性:</p>
<ol>
<li>基于 inspect \ (ast) 采用静态分析的思路, 不依赖业务代码, 能够文档先于项目</li>
<li>嵌入 Django CMD</li>
<li>生成所用到的代码不会影响生产环境性能</li>
</ol>
<p>之前接触过 <a href="https://www.django-rest-framework.org/">drf</a>, 一个基于 Django 的 rest 框架. 由于深渡契合 rest, 有着严格的项目结构约束, 所以能够直接从代码文件生成出对应的 <code>swagger</code> 描述文件. 但是这套代码是无法直接移殖到 Django 上面的, 因为后者的结构比较松散, 没有一种万金油的生成策略.</p>
<p>所以, 本篇所提供的生成方案具有以下约束:</p>
<ol>
<li>需要封装一层装饰器, 并应用与所有需要生成文档的视图函数.</li>
<li>依赖 pydantic (或者平替 cattrs \ schema 等)</li>
</ol>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-06-24-django2swagger" target="_blank">https://blog.harumonia.moe/posts/2022-06-24-django2swagger</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Pycharm 和 VSCode 的 docker compose 开发模式]]></title>
            <link>https://blog.harumonia.moe/posts/2022-09-10-pycharm-docker-compose-dev</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-09-10-pycharm-docker-compose-dev</guid>
            <pubDate>Sat, 28 May 2022 17:53:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇是关于如何在 Pycharm 和 VSCode 中使用 Docker Compose 的. 开篇比较啰嗦, 大抵是踩过的一些坑和问题的解决过程, 实际的配置内容自 <a href="#%E8%BD%AC">转</a> 这一节开始.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-09-10-pycharm-docker-compose-dev" target="_blank">https://blog.harumonia.moe/posts/2022-09-10-pycharm-docker-compose-dev</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[开发人员的Mac软件推荐列表(持续更新)]]></title>
            <link>https://blog.harumonia.moe/posts/2022-05-14-new-mac-software-init</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-05-14-new-mac-software-init</guid>
            <pubDate>Sat, 14 May 2022 15:35:54 GMT</pubDate>
            <content:encoded><![CDATA[<p>开发者新Mac配置推荐. 本列表以开源免费的软件为主, 以及部分实用的收费软件. 不会包含盗版软件获取途径与软件破解方法, 取而代之的是, 会提供一些优惠获取途径.</p>
<p>收费软件会以*进行标识</p>
<blockquote></blockquote>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-05-14-new-mac-software-init" target="_blank">https://blog.harumonia.moe/posts/2022-05-14-new-mac-software-init</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Docker 镜像优化实践]]></title>
            <link>https://blog.harumonia.moe/posts/2022-04-15-docker-image-smaller</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-04-15-docker-image-smaller</guid>
            <pubDate>Fri, 15 Apr 2022 16:30:50 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇主要的内容是如何对 Docker 镜像进行优化.</p>
<p>优化总共分为以下几步:</p>
<ol>
<li>基于项目优化
<ul>
<li>缩减依赖包</li>
</ul>
</li>
<li>基于Docker优化
<ul>
<li>目录结构优化</li>
<li>构建文件优化</li>
<li>使用 <strong>dive</strong> 进行镜像分析</li>
</ul>
</li>
</ol>
<p>以及部分 <strong>Multi-stage build</strong> 的内容.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-04-15-docker-image-smaller" target="_blank">https://blog.harumonia.moe/posts/2022-04-15-docker-image-smaller</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[doccano的使用注意]]></title>
            <link>https://blog.harumonia.moe/posts/2022-04-12-doccano-use</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-04-12-doccano-use</guid>
            <pubDate>Tue, 12 Apr 2022 20:58:22 GMT</pubDate>
            <content:encoded><![CDATA[<blockquote>
<p>本篇完成于 2022-04-12, 对应的 doccano 版本为 1.6.2.</p>
</blockquote>
<p><a href="https://github.com/doccano/doccano">doccano</a> 是一个标注平台,</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-04-12-doccano-use" target="_blank">https://blog.harumonia.moe/posts/2022-04-12-doccano-use</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[API设计个人经验小结(施工中)]]></title>
            <link>https://blog.harumonia.moe/posts/2022-03-29-design-better-api</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-03-29-design-better-api</guid>
            <pubDate>Tue, 29 Mar 2022 09:50:04 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇基于笔者本人的实际工作经验, 总结了一些API的设计思路, 并提供了对应的参考资料以供深入研究.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-03-29-design-better-api" target="_blank">https://blog.harumonia.moe/posts/2022-03-29-design-better-api</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[github同步代码片段的自动化脚本]]></title>
            <link>https://blog.harumonia.moe/posts/2022-03-19-sync-code-snippet</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-03-19-sync-code-snippet</guid>
            <pubDate>Sat, 19 Mar 2022 11:56:55 GMT</pubDate>
            <content:encoded><![CDATA[<p>工作快一年了, 积累了很多的 代码片段(<code>code snippet</code>), 所以需要一个小工具来实现公司\家庭\开发\私人服务器等地方的代码片段的同步.</p>
<p>同步的方法有很多, 我试过onedriver \ codemass \ gist 等手段, 但是各有各的缺点(后文补充), 所以最后还是选择了一个相对折中的方案, GitHub.</p>
<p>本文主要介绍的就是如何通过自动化脚本实现GitHub代码片段的同步.</p>
<p>代码环境:</p>
<ul>
<li>macos</li>
<li>ubuntu</li>
<li>centos</li>
</ul>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-03-19-sync-code-snippet" target="_blank">https://blog.harumonia.moe/posts/2022-03-19-sync-code-snippet</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[2022-2 莎翁与王尔德]]></title>
            <link>https://blog.harumonia.moe/posts/2022-03-01-2022-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-03-01-2022-2</guid>
            <pubDate>Tue, 01 Mar 2022 21:38:45 GMT</pubDate>
            <content:encoded><![CDATA[<p>日常生活.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-03-01-2022-2" target="_blank">https://blog.harumonia.moe/posts/2022-03-01-2022-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[django-shell-inject-script]]></title>
            <link>https://blog.harumonia.moe/posts/2022-02-17-django-shell-inject-script</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-02-17-django-shell-inject-script</guid>
            <pubDate>Thu, 17 Feb 2022 16:23:41 GMT</pubDate>
            <content:encoded><![CDATA[<p>在 django, 或者其他的 python 交互式 shell 中, 有时候需要进入到 shell 中进行调试工作, 但是当调试的代码量较大， 或者调试十分地频繁的时候, 这种操作会变得十分地痛苦, 在线上环境中的调试尤甚.</p>
<p>本篇会介绍一个注入脚本, 可以方便地在 python 的交互式 shell 中进行调试.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-02-17-django-shell-inject-script" target="_blank">https://blog.harumonia.moe/posts/2022-02-17-django-shell-inject-script</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[一曲新词酒一杯]]></title>
            <link>https://blog.harumonia.moe/posts/2022-02-04-a-love-affair-gone-by</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-02-04-a-love-affair-gone-by</guid>
            <pubDate>Fri, 04 Feb 2022 22:14:39 GMT</pubDate>
            <content:encoded><![CDATA[<p>不胜人间一醉.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-02-04-a-love-affair-gone-by" target="_blank">https://blog.harumonia.moe/posts/2022-02-04-a-love-affair-gone-by</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Ubuntu初始环境配置(持续更新中)]]></title>
            <link>https://blog.harumonia.moe/posts/2022-01-05-ubuntu-initial</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-01-05-ubuntu-initial</guid>
            <pubDate>Wed, 05 Jan 2022 10:19:25 GMT</pubDate>
            <content:encoded><![CDATA[<p>本想改造一下公司电脑的 Windows,后来干脆直接给电脑刷了个 Windows, 于是, 风扇不再是噪声源, 电脑不再是暖手宝, 一切都变得清爽了起来.</p>
<p>唯一美中不足的是 ubuntu 上的软件和 Windows 还是有些差异的, 所以就有了本篇, 将各个常用的软件(从程序员的角度)的安装和坑点列出来.</p>
<p>另附一个开发中的 <a href="https://github.com/zxjlm/ubuntu-dev-setup-especially-for-cn">Ubuntu 初始化脚本</a>.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-01-05-ubuntu-initial" target="_blank">https://blog.harumonia.moe/posts/2022-01-05-ubuntu-initial</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[2021]]></title>
            <link>https://blog.harumonia.moe/posts/2022-01-01-my-2021</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2022-01-01-my-2021</guid>
            <pubDate>Sat, 01 Jan 2022 19:00:08 GMT</pubDate>
            <content:encoded><![CDATA[<p>反思是为了更好的前进, 本篇主要是对已经过去的 2021 年的一些简单的思考与觉悟.</p>
<p>不过这些思考的内容大多是在年末所有感而发的. 以 2021 为标题确实有点言过其实了(笑.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2022-01-01-my-2021" target="_blank">https://blog.harumonia.moe/posts/2022-01-01-my-2021</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[bash脚本 - 过期日志文件清理]]></title>
            <link>https://blog.harumonia.moe/posts/2021-09-17-clean-logs</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-09-17-clean-logs</guid>
            <pubDate>Fri, 17 Sep 2021 22:03:57 GMT</pubDate>
            <content:encoded><![CDATA[<p>公司服务器上的日志文件多年积压, 已经占用了很大一部分不必要的内存空间. 所以本篇将完成一个功能性脚本, 其内容是扫描过期的日志文件, 并对文件进行对应的操作.</p>
<p>好久没有写过 bash 脚本了, 本篇也算是对这项技能的一个温习吧.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-09-17-clean-logs" target="_blank">https://blog.harumonia.moe/posts/2021-09-17-clean-logs</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[pdfplumber内存泄露问题解决方案(施工中)]]></title>
            <link>https://blog.harumonia.moe/posts/2021-09-14-pdfplumber-memory-leak</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-09-14-pdfplumber-memory-leak</guid>
            <pubDate>Tue, 14 Sep 2021 10:47:01 GMT</pubDate>
            <content:encoded><![CDATA[<p>在使用 <strong>pdfplumber</strong> 时会出现内存递增的情况, 最终导致内存的爆炸, 这一点在高频率地调用时尤为明显.<br>
本篇主要解决的就是 <strong>pdfplumber</strong> 这个依赖包所导致的内存泄露问题.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-09-14-pdfplumber-memory-leak" target="_blank">https://blog.harumonia.moe/posts/2021-09-14-pdfplumber-memory-leak</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Poirot 开发记录(2) - 字体抽取和OCR的优化方案]]></title>
            <link>https://blog.harumonia.moe/posts/2021-08-25-poirot-development-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-08-25-poirot-development-2</guid>
            <pubDate>Wed, 25 Aug 2021 21:27:55 GMT</pubDate>
            <content:encoded><![CDATA[<p>承接前面两篇, <a href="https://blog.harumonia.moe/font-antispider-cracker/">字体反爬虫解决方案</a> 和 <a href="https://blog.harumonia.moe/poirot-development-progressbar/">进度条方案</a>, 本篇是对旧版本的 Poirot 部分内容的性能优化.</p>
<p>主要优化内容为:</p>
<ul>
<li>使用 <code>Pillow</code> 从字体文件中抽取出字形图片</li>
<li>使用 <code>Tesseract</code> 进行 OCR 识别</li>
</ul>
<p><s>当然还有一些细枝末节的优化, 如 socketio 的版本升级等, 这其中又遇到了一些小问题, 会在文末一并总结.</s></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-08-25-poirot-development-2" target="_blank">https://blog.harumonia.moe/posts/2021-08-25-poirot-development-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[kex_exchange_identification问题及解决]]></title>
            <link>https://blog.harumonia.moe/posts/2021-07-18-github-kex-exchange-identification-solution</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-07-18-github-kex-exchange-identification-solution</guid>
            <pubDate>Sun, 18 Jul 2021 20:30:19 GMT</pubDate>
            <content:encoded><![CDATA[<p>简单地记述了一下在使用 <em>github</em> 时遇到的 <strong>kex_exchange_identification</strong> 错误.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-07-18-github-kex-exchange-identification-solution" target="_blank">https://blog.harumonia.moe/posts/2021-07-18-github-kex-exchange-identification-solution</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[毕业旅行]]></title>
            <link>https://blog.harumonia.moe/posts/2021-06-28-chengdu-seven-day</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-06-28-chengdu-seven-day</guid>
            <pubDate>Mon, 28 Jun 2021 21:09:20 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇又是一个日常记述, 主要内容是博主毕业旅行的二三事.</p>
<p>目的地定在 <em>成都</em> , 来回耗时 <em>7</em> 天, 包括交通费在内的人均总开销 <em>3985.51RMB</em>. 乘兴而来, 兴尽而归, 总的来说世一趟很不错的旅行.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-06-28-chengdu-seven-day" target="_blank">https://blog.harumonia.moe/posts/2021-06-28-chengdu-seven-day</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Christin开发记录(2) - nginx和前后端分离]]></title>
            <link>https://blog.harumonia.moe/posts/2021-06-12-christin-develop-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-06-12-christin-develop-2</guid>
            <pubDate>Sat, 12 Jun 2021 18:05:28 GMT</pubDate>
            <content:encoded><![CDATA[<p>在<a href="https://blog.harumonia.moe/christin-develop-1/">Christin 开发记录(1)</a>中， 我们讲过了这个项目的大体的设计思路，本篇以及之后的几篇将会详细地阐述各个技术要点的具体实现方案。</p>
<p>本篇主要的内容是 nginx 在 <em>前后端分离</em> 和 <em>多语言开发</em> 的代理作用.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-06-12-christin-develop-2" target="_blank">https://blog.harumonia.moe/posts/2021-06-12-christin-develop-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[大学生活阶段性小结]]></title>
            <link>https://blog.harumonia.moe/posts/2021-06-11-upon-graduation</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-06-11-upon-graduation</guid>
            <pubDate>Fri, 11 Jun 2021 10:35:44 GMT</pubDate>
            <content:encoded><![CDATA[<p>醉花阴 - 满船清梦</p>
<p>红山微雨凉初透, 孤帆见重楼. 金陵一樽酒, 栏干拍遍, 难解少年愁.<br>
杏坛归离芒种后, 三尺决九州. 还酹江天月, 醉里挑灯, 共此韶华旧.</p>
<p>-- harumonia, 二〇二一年六月, 于南京中医药大学</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-06-11-upon-graduation" target="_blank">https://blog.harumonia.moe/posts/2021-06-11-upon-graduation</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[fastNLP和spaCy的使用]]></title>
            <link>https://blog.harumonia.moe/posts/2021-06-06-fastnlp-and-spacy</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-06-06-fastnlp-and-spacy</guid>
            <pubDate>Sun, 06 Jun 2021 18:05:42 GMT</pubDate>
            <content:encoded><![CDATA[<p>fastNLP 和 spaCy 都是自然语言处理常用的算法包,本篇将会应用的角度,分别使用这两个算法包训练一个可用的命名实体识别模型.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-06-06-fastnlp-and-spacy" target="_blank">https://blog.harumonia.moe/posts/2021-06-06-fastnlp-and-spacy</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Christin开发记录(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2021-05-21-christin-develop-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-05-21-christin-develop-1</guid>
            <pubDate>Fri, 21 May 2021 20:46:07 GMT</pubDate>
            <content:encoded><![CDATA[<h2>关于 Christin</h2>
<p><code>Christin</code> 是笔者本科毕业设计的伴生项目, 笔者本科毕业设计的课题叫做 <strong>基于多元异构数据的中医药知识图谱构建及应用</strong> , 作为其实践产物的平台,我将其命名为 <strong>Christin</strong> , 选名自我所以喜爱的 ARPG 游戏系列 <em>&lt;伊苏&gt;</em> 的主角 <em>亚特鲁-克里斯汀( Adol Christin )</em> 以及我第二喜欢的小说家 <em>Dame Agatha Mary Clarissa Christie</em>. 当然, 其对外的平台名称叫做 <strong>中医药知识图谱构建平台</strong>.</p>
<p>本系列将主要介绍这个项目开发的 <strong>思路</strong> / <strong>完善过程</strong> 与 <strong>技术栈</strong> . (截止到毕设答辩前夕)</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-05-21-christin-develop-1" target="_blank">https://blog.harumonia.moe/posts/2021-05-21-christin-develop-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[毕业设计过程中的一些有趣/有用的网站]]></title>
            <link>https://blog.harumonia.moe/posts/2021-04-13-interesting-website-in-graduation-design</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-04-13-interesting-website-in-graduation-design</guid>
            <pubDate>Tue, 13 Apr 2021 08:19:19 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇将会介绍一些笔者在完成毕设的过程中所发现的一些有趣的网站或者工具.包括:</p>
<ul>
<li>代码着色网站</li>
<li>流程图\架构图等工程图片的绘图网站</li>
<li>公式识别工具</li>
<li>数据库文档</li>
<li>翻译工具</li>
<li>免费的论文查重</li>
</ul>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-04-13-interesting-website-in-graduation-design" target="_blank">https://blog.harumonia.moe/posts/2021-04-13-interesting-website-in-graduation-design</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[为什么 mongodb 使用 ObjectId,  而 Mysql 使用自增 id]]></title>
            <link>https://blog.harumonia.moe/posts/2021-03-30-why-mongo-use-object-id</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-03-30-why-mongo-use-object-id</guid>
            <pubDate>Tue, 30 Mar 2021 18:07:14 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>首先需要说明的一点是, 本篇并不是为了讨论 ObjectId 和自增 id 谁更好用.在笔者看来, 文档型数据库和关系型数据库的使用场景不同, 有不同的使用倾向是理所当然的事情, 没有必要拉到一块儿&quot;关公战秦琼&quot;.</p>
<p>本篇单从设计的角度来说, 为什么 ObjectId 和 自增 id 分别使用于各自的使用场景.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-03-30-why-mongo-use-object-id" target="_blank">https://blog.harumonia.moe/posts/2021-03-30-why-mongo-use-object-id</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Frankenstein开发记录(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2021-03-02-frankenstein-develop-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2021-03-02-frankenstein-develop-1</guid>
            <pubDate>Tue, 02 Mar 2021 17:46:30 GMT</pubDate>
            <content:encoded><![CDATA[<p><code>Frankenstein</code> 是用来搜索可用数据源的一个小工具,它包含两个主要功能</p>
<ol>
<li>友链扫描</li>
<li>关键字扫描</li>
</ol>
<p>这两个部分本质上都是对现存的数据源进行遍历搜索,区别在于二者的扫描侧重点不同.</p>
<p>本篇主要是 <strong>友链扫描</strong> 的开发记录.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2021-03-02-frankenstein-develop-1" target="_blank">https://blog.harumonia.moe/posts/2021-03-02-frankenstein-develop-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Poirot开发记录(1) -- 进度条]]></title>
            <link>https://blog.harumonia.moe/posts/2020-12-17-poirot-development-progressbar</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-12-17-poirot-development-progressbar</guid>
            <pubDate>Thu, 17 Dec 2020 15:55:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>Poirot 是自动将字体文件(woff\woff2\ttf)映射为结果字典,主要用于中文字体反爬虫的破解,包括 css 字体映射和图片文字反爬虫.</p>
<p>实现的基础思路可见于<a href="https://blog.harumonia.moe/font-antispider-cracker/">字体反爬虫解决方案-自动化通过字体文件生成映射字典</a>.</p>
<p>与 <a href="https://blog.harumonia.moe/mori-kokoro/">Mori</a> 同属于爬虫工作的小工具.名字取自大侦探波洛(<em>Hercule Poirot</em>). 与 Mori 的脚本服务不同,这次从实际使用的角度考虑,采用了 web 服务的形式.</p>
<p>本篇记录了 Poirot 的开发中学习到的技术和踩到的坑。</p>
<p>主要包括:</p>
<ol>
<li>flask-websocket 的使用</li>
<li>进度条的实现</li>
</ol>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-12-17-poirot-development-progressbar" target="_blank">https://blog.harumonia.moe/posts/2020-12-17-poirot-development-progressbar</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[wsl2上的jupyter配置]]></title>
            <link>https://blog.harumonia.moe/posts/2020-12-11-some-config-of-jupyter-on-wsl2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-12-11-some-config-of-jupyter-on-wsl2</guid>
            <pubDate>Fri, 11 Dec 2020 10:46:19 GMT</pubDate>
            <content:encoded><![CDATA[<p>由于之前疏于对公司电脑上面的 C 盘的管理,它的存储空间不出意外地炸了.</p>
<p>于是就开始了繁琐的清理工作.首先通过 设置 -&gt; 存储 找到 C 盘占用空间的大头.也就是微信文件和 miniconda,微信由于日常的工作联系等积压了大约 5G 左右,miniconda...emmm...8G = =</p>
<p>看了一下,pytorch、tensorflow 等一系列的包、环境,这个手术动起来还是挺麻烦的,牵连太多了.</p>
<p>不过随着工作任务的固定,有些包和环境确实也不需要了,于是就有了接下来的一些迷惑操作.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-12-11-some-config-of-jupyter-on-wsl2" target="_blank">https://blog.harumonia.moe/posts/2020-12-11-some-config-of-jupyter-on-wsl2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[数据库中的.frm\.myi\.myd文件]]></title>
            <link>https://blog.harumonia.moe/posts/2020-12-07-sql-frm-myi-myd-files</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-12-07-sql-frm-myi-myd-files</guid>
            <pubDate>Mon, 07 Dec 2020 17:44:26 GMT</pubDate>
            <content:encoded><![CDATA[<p>最近在寻找一些毕设要用到的数据，医药相关的，恰好在某个网站上面找到了备份数据库(手段不太光彩，这里就不细说了)，省去了写爬虫的麻烦。</p>
<p>不过这些备份文件是 <em>.MYD / .MYI / .frm</em> 这样的后缀，emmmmm，对于用惯了 <em>.sql</em> 的我来说，还是很头大的。</p>
<p>本篇的主要内容就是如何使用 <em>.frm / .MYI / .MYD</em> 文件来恢复数据库，同时，做了一些关联的延申。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-12-07-sql-frm-myi-myd-files" target="_blank">https://blog.harumonia.moe/posts/2020-12-07-sql-frm-myi-myd-files</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[字体反爬虫解决方案-自动化通过字体文件生成映射字典]]></title>
            <link>https://blog.harumonia.moe/posts/2020-12-01-font-antispider-cracker</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-12-01-font-antispider-cracker</guid>
            <pubDate>Tue, 01 Dec 2020 09:31:55 GMT</pubDate>
            <content:encoded><![CDATA[<h2>字体反爬虫</h2>
<p>初级的字体反爬虫可以参照<a href="https://segmentfault.com/a/1190000021631732">字体反爬的解决方案——突破抖音反爬虫机制</a>这边文章.</p>
<p>类似的文章教程不胜枚举,所以这里对于 <em>字体反爬虫基础</em> 就不做赘述.本篇要讨论的是如何处理在多大数百、数千个自定义字体的复杂情况下完成从字体文件生成映射字典的工作.</p>
<p>上面提到的文章,采用的是人工映射,这在只有 0~10 这样的简单情况下自然是最方便的处理办法,但是对于大量字体的情况,就捉襟见肘了.并且,即使花了半天时间将这些字体一一映射,万一网站的字体库发生变化,或者网站本身就采用动态字体库,就很麻瓜了.</p>
<p>本着&quot;花半天时间做重复性的苦力工作,不如花一天时间做创造性工作&quot;的原则(<s>预估的开发时间比较充裕,才有时间来实践这些突发的灵感</s>),决定搞一些懒人方法.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-12-01-font-antispider-cracker" target="_blank">https://blog.harumonia.moe/posts/2020-12-01-font-antispider-cracker</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[awk 学习记录]]></title>
            <link>https://blog.harumonia.moe/posts/2020-11-24-learn-awk-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-11-24-learn-awk-1</guid>
            <pubDate>Tue, 24 Nov 2020 17:44:26 GMT</pubDate>
            <content:encoded><![CDATA[<p>上周在外网搭建了一个服务,主要是用来对 Mori 的各种处理状态做测试.</p>
<p>今天在看网站统计的时候,发现请求的次数不太正常,主要表现就是出现了下面这种画风的请求.</p>
<pre><code class="language-bash">INFO:     174.49.25.36:51271 - &quot;GET / HTTP/1.1&quot; 200 OK
INFO:     14.139.155.142:41680 - &quot;GET /currentsetting.htm HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:58868 - &quot;GET /wp-content/plugins/wp-file-manager/readme.txt HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:58844 - &quot;GET /?XDEBUG_SESSION_START=phpstorm HTTP/1.1&quot; 200 OK
INFO:     91.241.19.84:42642 - &quot;GET /console/ HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:36206 - &quot;POST /api/jsonws/invoke HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:55124 - &quot;POST /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:36174 - &quot;GET /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:42156 - &quot;GET /index.php?s=/Index/\think\app/invokefunction&amp;function=call_user_func_array&amp;vars[0]=md5&amp;vars[1][]=HelloThinkPHP21 HTTP/1.1&quot; 404 Not Found
INFO:     91.241.19.84:52646 - &quot;GET /?a=fetch&amp;content=&lt;php&gt;die(@md5(HelloThinkCMF))&lt;/php&gt; HTTP/1.1&quot; 200 OK
INFO:     91.241.19.84:53606 - &quot;GET /solr/admin/info/system?wt=json HTTP/1.1&quot; 404 Not Found
INFO:     203.205.34.139:47518 - &quot;GET / HTTP/1.1&quot; 200 OK
INFO:     182.185.14.56:62446 - &quot;GET /currentsetting.htm HTTP/1.1&quot; 404 Not Found
</code></pre>
<p>随手摘了一个 ip (219.149.212.74) 查询了一下,竟然是国内的 = =|||</p>
<p>又想到从大二下接触 web 开发,到现在两年多,部署了几个服务,但是却没有好好分析过网站的日志文件,正好就趁着这个机会看看吧.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-11-24-learn-awk-1" target="_blank">https://blog.harumonia.moe/posts/2020-11-24-learn-awk-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Mori Kokoro 开发过程中遇到的问题(2) 以及使用代码收集]]></title>
            <link>https://blog.harumonia.moe/posts/2020-11-10-mori-question-and-code-collection</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-11-10-mori-question-and-code-collection</guid>
            <pubDate>Tue, 10 Nov 2020 10:52:26 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>距离 Mori v0.1 成形已经过了一周.这一周里面对这个代码进行了进一步的优化.</p>
<p>在 <a href="https://blog.harumonia.moe/mori-kokoro/">Mori Kokoro 开发记录</a> 中已经对上个阶段开发中遇到的问题进行了一次汇总.本篇是对本阶段的问题的汇总.</p>
<p>另外.将一些实用的代码摘出.并进行注释说明.</p>
<p><img src="https://harumona-blog.oss-cn-beijing.aliyuncs.com/new_articles/mori.gif" alt="mori"></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-11-10-mori-question-and-code-collection" target="_blank">https://blog.harumonia.moe/posts/2020-11-10-mori-question-and-code-collection</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Mori Kokoro 开发记录]]></title>
            <link>https://blog.harumonia.moe/posts/2020-11-05-mori-kokoro</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-11-05-mori-kokoro</guid>
            <pubDate>Thu, 05 Nov 2020 10:52:26 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>目前主要接触的爬虫开发主要有两种：</p>
<ol>
<li>静态网页</li>
<li>api</li>
</ol>
<p>我司已经有静态网页的检测工具,不过随着 api 类爬虫日益增加,需要一个新的可以用来检测 api 变动的脚本.</p>
<p>这里我选择开发一个命令行工具,而非 web 平台服务.理由是前者更加 geek &amp;&amp; cool.并且前者只要稍作改动,就可以很好地兼容后者.</p>
<p>我将其命名为 Mori Kokoro , 取自柯南的 <em>毛利小五郎</em> . 就一个检测脚本而言,它的工作与侦探 🔍 相类似(发现坏家伙 😀).同时这个脚本算是我第一个开发的命令行脚本,无论是代码质量,还是功能实现,都缺乏信心,所以就以毛利为名.</p>
<p><a href="https://github.com/zxjlm/Mori">Mori 项目地址</a></p>
<p><img src="https://harumona-blog.oss-cn-beijing.aliyuncs.com/new_articles/mori.PNG" alt="main"></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-11-05-mori-kokoro" target="_blank">https://blog.harumonia.moe/posts/2020-11-05-mori-kokoro</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[爬虫监控服务的数据库选择-bitmap应用]]></title>
            <link>https://blog.harumonia.moe/posts/2020-10-29-redis-log</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-10-29-redis-log</guid>
            <pubDate>Thu, 29 Oct 2020 17:12:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>在爬虫实习中遇到了这样一个情境：对一个给定的队列进行数据爬取(比如说是一个公司名称的队列，爬取对应的公司信息)，当然不是开发结束就算是完成了，代码无法保证能够应对所有的突发情况，而且我们也需要一个半透明的，甚至是透明的爬虫监控系统，了解爬虫的任务进度，以及过程中遇到的一些问题。</p>
<p>这个监控系统并不难实现，使用 flask 写了一个服务平台，不过是几个小时的事情，但是我在实现过程中遇到一个很有趣的问题：用什么样的数据库来保存这些数据？</p>
<p>笔者写爬虫时常用的数据有 <strong>MySQL</strong>、<strong>mongoDB</strong>、<strong>Redis</strong>，这三个各有长处，用来针对不同的业务需求；而在写 web 服务时，则常用 <strong>MySQL</strong>、<strong>SQLite</strong>。</p>
<p>这些数据库在不同的情境下各有优劣，正巧最近有些闲工夫，就在这个问题上做了一些发散。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-10-29-redis-log" target="_blank">https://blog.harumonia.moe/posts/2020-10-29-redis-log</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Be a better pythonista(4)：nametuple的实际应用]]></title>
            <link>https://blog.harumonia.moe/posts/2020-10-28-nametuple_act</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-10-28-nametuple_act</guid>
            <pubDate>Wed, 28 Oct 2020 16:39:00 GMT</pubDate>
            <content:encoded><![CDATA[<blockquote>
<p>Factory Function for Tuples with Named Fields</p>
</blockquote>
<p>Python 除了大家熟知的，可以直接使用的 list、dictionary、tuple 等容器，还有一些放在 collections 包中的容器，这些容器的泛用性不及普通容器，但是在特殊的场景下，有着超过普通容器的性能与便利性。</p>
<p>本篇就在官方文档的基础上，结合笔者的学习工作经验，于管中窥得 nametuple 之一斑。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-10-28-nametuple_act" target="_blank">https://blog.harumonia.moe/posts/2020-10-28-nametuple_act</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[极客大赛与赛后反思]]></title>
            <link>https://blog.harumonia.moe/posts/2020-08-05-geek-contest</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-08-05-geek-contest</guid>
            <pubDate>Wed, 05 Aug 2020 18:15:24 GMT</pubDate>
            <content:encoded><![CDATA[<h1>前言</h1>
<p>极客大赛是我司举办的一个内部的挑战比赛，大致的内容就是拟定一道比赛题目，然后根据最后的完成度进行得分排名。比赛的时间为一天，大抵就是上班到下班这么长的时间。</p>
<p>今年的题目是完成一个票据识别的 app。核心的模块是票据的扫描、识别和后端的存储、统计功能。衍生的加分项就很多了，测试覆盖率、界面设计等等，差不多就是软件的综合完成度、用户体验这些。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-08-05-geek-contest" target="_blank">https://blog.harumonia.moe/posts/2020-08-05-geek-contest</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Windows下的终端优化方案]]></title>
            <link>https://blog.harumonia.moe/posts/2020-07-19-windows-terminal-beautify</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-07-19-windows-terminal-beautify</guid>
            <pubDate>Sun, 19 Jul 2020 22:13:08 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>在 Mac 上面安装了 <a href="https://www.iterm2.com/">iTerm2</a> 之后，逐渐难以忍受 <em>Windows</em> 上面简陋的终端界面，<strong>CMD</strong> 就不谈了，即使了 Windows10 加入的 <strong>PowerShell</strong> ，也依旧差强人意。</p>
<p>PowerShell 强化了 Windows 命令，并且能够让电脑使用部分的 Linux 命令，这是一个重大的进步。其缺点依旧明显，Linux 命令并不完整，对于习惯了使用 Linux 命令行来实现一些骚操作的人来说，难免有点束手束脚。其次，PowerShell 的界面也不太令人满意。</p>
<p>所以这次按照 <a href="https://docs.microsoft.com/zh-cn/windows/terminal/">Windows Terminal Docs</a> , DIY 一个美观的 Terminal。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-07-19-windows-terminal-beautify" target="_blank">https://blog.harumonia.moe/posts/2020-07-19-windows-terminal-beautify</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[写在实习第一周]]></title>
            <link>https://blog.harumonia.moe/posts/2020-06-21-the-first-week-of-practice</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-06-21-the-first-week-of-practice</guid>
            <pubDate>Sun, 21 Jun 2020 22:56:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>工作</h2>
<p>正式实习已经差不多一周的时间了，爬虫工程师的工作比预想中的要轻松一点，也许因为这只是实习的原因吧，正式工的老哥们倒是回去得挺晚的了。</p>
<p>老实说，在入职之前，对于同期的实习生是抱有一些幻想的。就像是《半泽直树》中的半泽、渡边等同期生一样，结成同期阵营，互相扶持。不过事实和理想还是有所差距的，同期的 6 月份加入的实习生只有一位，还是个没有多少共同语言的女生，emmmmm，还是老老实实工作吧。</p>
<p>mentor 挺不错的，就像是在 HR 面中所说的那样，一直不厌其烦地指导我进行学习。mentor 画饼的功力不如涛哥，所以他所描绘的画卷并没有在我心中掀起多少波澜，只是表面上迎合了一下。吃饼吃多了，还是务实胜过务虚好。</p>
<p>爬虫算是我进入大学后学习的第一个技术了，但是当时并没有深入地了解，只是草草地构建了 requests、selenium 等爬虫常用的技术栈之后，就浅尝辄止了。大学生涯以爬虫始，后端终；职业生涯也是以爬虫始，而且大概率会以后端终。emmmmmm，这么一想，总有一种“这就是命”的奇怪感觉。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-06-21-the-first-week-of-practice" target="_blank">https://blog.harumonia.moe/posts/2020-06-21-the-first-week-of-practice</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[无题]]></title>
            <link>https://blog.harumonia.moe/posts/2020-06-07-no-title-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-06-07-no-title-1</guid>
            <pubDate>Sun, 07 Jun 2020 11:21:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>大三末，学院的生活已经接近尾声，何去何从，这是贯穿整个五月的问题。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-06-07-no-title-1" target="_blank">https://blog.harumonia.moe/posts/2020-06-07-no-title-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[个人简历(备用)]]></title>
            <link>https://blog.harumonia.moe/posts/2020-05-30-resume</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-05-30-resume</guid>
            <pubDate>Sat, 30 May 2020 09:48:59 GMT</pubDate>
            <content:encoded><![CDATA[<h1>个人介绍</h1>
<p>now：大三在读(2021 毕业)</p>
<p><a href="mailto:email:zxjlm233@163.com">email:zxjlm233@163.com</a></p>
<p>base:南京</p>
<p>求职意向：后端开发、测试</p>
<p>个人总结：</p>
<ul>
<li>大三在读，参加过多项比赛并且获奖</li>
<li>拥有良好的沟通和协调能力，善于应变，能够快速适应新环境</li>
<li>具有团队协作精神，能够承受工作压力，有较高的执行力</li>
<li>曾在工作室的项目中负责的总体规划设计和业务功能开发</li>
<li>熟悉 windows、linux、macOS 三端开发</li>
</ul>
<p>个人网站：<a href="http://harumonia.top/">Zaxon</a></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-05-30-resume" target="_blank">https://blog.harumonia.moe/posts/2020-05-30-resume</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[自动化的每日打卡工具v1.1]]></title>
            <link>https://blog.harumonia.moe/posts/2020-05-04-a-Automatic-clocking-script</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-05-04-a-Automatic-clocking-script</guid>
            <pubDate>Mon, 04 May 2020 15:52:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>惯例的前言，这次这个小玩具又是一个来源于生活的东西了。</p>
<p>上次写了一个基于 linux 的自动打卡机，但是最近又有了新的需求。。。</p>
<p>其一是学校的每一次表单变更都需要进入项目进行代码级别的修改、测试、部署，实在是太过麻烦。</p>
<p>其二是以往的自动化需求太高，而对于没有服务器的同学只能看着眼馋。</p>
<p>于是这次写了一个基于 flask 的自动打卡网站，emmm，暂时没啥 bug。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-05-04-a-Automatic-clocking-script" target="_blank">https://blog.harumonia.moe/posts/2020-05-04-a-Automatic-clocking-script</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[雨课堂习题爬虫+文字识别]]></title>
            <link>https://blog.harumonia.moe/posts/2020-04-29-rain-classroom-exercises-spider-and-OCR</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-04-29-rain-classroom-exercises-spider-and-OCR</guid>
            <pubDate>Wed, 29 Apr 2020 14:51:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>感觉已经一万年没有更新博客了。。。这次是制作一个简单的爬虫。</p>
<h2>前言</h2>
<p>本学期有一门纯文科的课程，名唤“医疗仪器原理”。谓之纯文科，自然是要背诵的题目太多了，多到了梦回高中历史的地步= =。</p>
<p>授课老师喜欢使用雨课堂发布习题，但是雨课堂没有办法导出题目和答案，想要整理就只能一条一条地复制粘贴，更骚的是，这个网站的题目默认被转成了图片格式(？？？)。好嘛，复制粘贴都做不到了。</p>
<p><img src="https://i.loli.net/2020/04/29/WhZH5pTk1MvJULc.png" alt="图片.png"></p>
<p>这种复习的效率实在是太低了，于是准备重操旧业，开始爬虫工程（面向监狱编程）</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-04-29-rain-classroom-exercises-spider-and-OCR" target="_blank">https://blog.harumonia.moe/posts/2020-04-29-rain-classroom-exercises-spider-and-OCR</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[(打卡)接雨水]]></title>
            <link>https://blog.harumonia.moe/posts/2020-04-04-catch-rain</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-04-04-catch-rain</guid>
            <pubDate>Sat, 04 Apr 2020 10:02:00 GMT</pubDate>
            <content:encoded><![CDATA[<blockquote>
<p>难得遇到一道困难的打卡题，就在这里写一下过程吧（虽然并不是很困难。。。）</p>
</blockquote>
<p>给定 n 个非负整数表示每个宽度为 1 的柱子的高度图，计算按此排列的柱子，下雨之后能接多少雨水。</p>
<p><img src="https://harumona-blog.oss-cn-beijing.aliyuncs.com/old_articles/2824310140.png?Expires=1602313299&amp;" alt="p1"></p>
<p>上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图，在这种情况下，可以接 6 个单位的雨水（蓝色部分表示雨水）</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-04-04-catch-rain" target="_blank">https://blog.harumonia.moe/posts/2020-04-04-catch-rain</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[C1.背叛者]]></title>
            <link>https://blog.harumonia.moe/posts/2020-03-07-C1-The-Betrayer</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-03-07-C1-The-Betrayer</guid>
            <pubDate>Sat, 07 Mar 2020 20:28:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>德黑兰王国西部边境，少年兵团营地，夜。</p>
<p>道恩静静地躺在床上，脑海中意识不断地翻腾汹涌，他虽然无法从中捕获到任何有用的信息，但是他清楚，这是自己的灵性在面对危机时的主动预警。而他也正是因为无条件地信任这种虚无缥缈的东西，现在才能以一个活人的身份躺在这里。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-03-07-C1-The-Betrayer" target="_blank">https://blog.harumonia.moe/posts/2020-03-07-C1-The-Betrayer</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[数据库开发（1）]]></title>
            <link>https://blog.harumonia.moe/posts/2020-03-02-database-development-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-03-02-database-development-1</guid>
            <pubDate>Mon, 02 Mar 2020 19:52:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>数据库学习笔记(1)</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-03-02-database-development-1" target="_blank">https://blog.harumonia.moe/posts/2020-03-02-database-development-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[自用的vim小笔记(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-16-vim-note-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-16-vim-note-1</guid>
            <pubDate>Sun, 16 Feb 2020 23:13:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>随着开发的深入，使用 vim 的频率渐次提升，但是技巧却始终停留在初见阶段（一些技巧虽然学过但是都忘了。。。），极大地影响了开发的效率，所以，再次学习 vim 势在必行。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-16-vim-note-1" target="_blank">https://blog.harumonia.moe/posts/2020-02-16-vim-note-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[完成一个自动打卡的脚本]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-15-a-Automatic-clocking-script</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-15-a-Automatic-clocking-script</guid>
            <pubDate>Sat, 15 Feb 2020 14:01:31 GMT</pubDate>
            <content:encoded><![CDATA[<h1>完成一个自动打卡的脚本</h1>
<h2>前言</h2>
<p>由于近期疫情猖獗，学校开始要求大家进行每日的健康打卡。</p>
<p>但是对于笔者这种死宅，根本不会出门的那种，每日的打卡基本上都是一模一样的内容。这种情况下打卡反而成了一种负担，如果哪天忙忘了，又免不了被一顿批评。</p>
<p>程序员自然有程序员的解决办法。所以这里就做了一个自动打卡的脚本，托管在服务器上，这样就可以不用去管这件事情咯。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-15-a-Automatic-clocking-script" target="_blank">https://blog.harumonia.moe/posts/2020-02-15-a-Automatic-clocking-script</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[关于B站视频的访问量爬虫]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-13-PV-spider-of-bilibili</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-13-PV-spider-of-bilibili</guid>
            <pubDate>Thu, 13 Feb 2020 21:02:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>&quot;<em>酒香不怕巷子深</em>&quot;，这样的想法在这个时代已经算是非常地消极和落伍的一个思想了。</p>
<p>就像是一部电影，如战狼、哪吒这样，优秀的宣发能够带来远超电影本身质量的收益；而反过来，如闪光少女这样的电影，质量足以称为上乘，但是票房确差强人意，这就是典型的忽视了市场规则的下场。</p>
<p>访问量、点赞、收藏、投币等要素共同决定了一个视频的热度。但是，除了前者之外，都需要一个确切的 B 站账户，笔者目前还没有能力来维持一个基数庞大的 B 站账号池，所以就只能在第一个要素，<strong>点击量</strong> 上下文章咯。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-13-PV-spider-of-bilibili" target="_blank">https://blog.harumonia.moe/posts/2020-02-13-PV-spider-of-bilibili</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[redis学习笔记(2)]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-12-redis-note-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-12-redis-note-2</guid>
            <pubDate>Wed, 12 Feb 2020 12:15:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>3 进阶功能</h1>
<h2>3.1 慢查询</h2>
<p><img src="http://typora-zxj.oss-cn-beijing.aliyuncs.com/typora/20200212121243-387827.png" alt="image-20200212121241917"></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-12-redis-note-2" target="_blank">https://blog.harumonia.moe/posts/2020-02-12-redis-note-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[redis学习笔记(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-09-redis-note-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-09-redis-note-1</guid>
            <pubDate>Sun, 09 Feb 2020 16:19:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>1. 基础</h1>
<h2>1.1 常识</h2>
<p>Redis 是用 C 语言开发的一个开源的高性能键值对（key-value）数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求，目前为止 Redis 支持的键值数据类型如下：</p>
<ul>
<li>字符串类型</li>
<li>散列类型</li>
<li>列表类型</li>
<li>集合类型</li>
<li>有序集合类型</li>
</ul>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-09-redis-note-1" target="_blank">https://blog.harumonia.moe/posts/2020-02-09-redis-note-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[搭建一个基于flask和redis的代理池(proxy pool)]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-08-proxy-pool-base-on-flask-and-redis</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-08-proxy-pool-base-on-flask-and-redis</guid>
            <pubDate>Sat, 08 Feb 2020 19:15:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>在进行网页爬虫的项目时，常常会因为爬取的频率过高而触发 <strong>反爬虫机制</strong> ，这时候，面临两个选择：</p>
<ol>
<li>休息片刻。一般反爬虫机制不会进行永久的 IP 封禁，只是暂时限制访问而已，等待封禁时间结束再进行爬取即可。当然对于某些拥有黑名单机制的网站，如果封禁次数过多，封禁的时间也会随着这个次数而提高。</li>
<li>更换 IP。既然我的 IP 被封了，那么我换一个其他的 IP 不就行了。</li>
</ol>
<p>显然，第二种方法更优于第一种，并且更加符合 geek 的风格。但是问题在于，从哪里寻找这样一个 IP 地址呢？</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-08-proxy-pool-base-on-flask-and-redis" target="_blank">https://blog.harumonia.moe/posts/2020-02-08-proxy-pool-base-on-flask-and-redis</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[己亥年正月十二:生日快乐]]></title>
            <link>https://blog.harumonia.moe/posts/2020-02-05-happy-birthday</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-02-05-happy-birthday</guid>
            <pubDate>Wed, 05 Feb 2020 20:31:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><img src="https://ask-fd.zol-img.com.cn/g5/M00/08/08/ChMkJ1nrTbuILjb1AAQeG5kptTkAAhc7ANm2dIABB4z837.jpg" alt="aisi"></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-02-05-happy-birthday" target="_blank">https://blog.harumonia.moe/posts/2020-02-05-happy-birthday</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[己亥年正月初一:鼠年，新年快乐]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-25-2020-spring-festival</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-25-2020-spring-festival</guid>
            <pubDate>Sat, 25 Jan 2020 15:27:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>关于疫情</h2>
<p>各地的疫情警报使得今年的春节有一种别样的味道。</p>
<p>我看到有人心系灾区捐款捐物，也看到有人趁此机会将自己推上舆论的风口攫取利益；我看到有人抱着舍身取义的心态奔赴一线，也看到有人仅将其作为茶余饭后的谈资不值一哂。</p>
<p>灾难面前众生百态，精彩如同一部小说，却远比我看过的任何小说都要精彩。对人的刻画，对社会的刻画，名为现实的大作家，以它的春秋笔法，将一切尽书于人前。</p>
<p>感慨就到这里吧，作为一个程序员，我们能做什么呢？</p>
<p>开启这个项目的起因是 severchain 发起的一个疫情推送功能，但是由于请求次数过多，服务器负载超限，不得已又停止了服务。我虽然不会做推送，但是搭建一个简单的疫情实况 api 还是很熟练地。</p>
<p>正好可以将寒假的两大技能 <strong>爬虫和 Flask</strong> ，做一个综合运用。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-25-2020-spring-festival" target="_blank">https://blog.harumonia.moe/posts/2020-01-25-2020-spring-festival</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[python爬虫复习(4)mitmproxy && 寒假作业的部分分析]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-19-spider-review-4-mitmproxy</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-19-spider-review-4-mitmproxy</guid>
            <pubDate>Sun, 19 Jan 2020 23:51:39 GMT</pubDate>
            <content:encoded><![CDATA[<h1>前言</h1>
<p>到这里，python 爬虫部分的复习也就告一段落了，当然，除了 scrapy，老实说，对于平常爬取几千条这种小打小闹的爬虫，并没有去深入研究 scrapy 的必要（当然，了解还是要了解一下的）。</p>
<p>之前学习爬虫，因为需求的原因，只学习了网页爬虫。趁着寒假有空，再来看一看 app 爬虫是啥样的吧。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-19-spider-review-4-mitmproxy" target="_blank">https://blog.harumonia.moe/posts/2020-01-19-spider-review-4-mitmproxy</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Linux常用命令复习1]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-17-Linux-cmd-review</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-17-Linux-cmd-review</guid>
            <pubDate>Fri, 17 Jan 2020 23:03:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>文件 &amp;&amp; 目录</h2>
<h3>目录大小 &amp;&amp; 浏览和切换目录</h3>
<ul>
<li>
<p>pwd 当前路径</p>
</li>
<li>
<p>which 搜索可执行文件路径</p>
</li>
<li>
<p>ls 列出当前目录</p>
<ul>
<li>-a all</li>
<li>-l list</li>
<li>-h 便于人类阅读</li>
<li>-t 按最近一次修改时间排序</li>
<li>-i 显示 inode</li>
</ul>
</li>
<li>
<p>cd 切换目录</p>
</li>
<li>
<p>du 显示目录包含的 <strong>文件</strong> 大小 <strong>du 会深入遍历目录的每个子目录</strong></p>
<ul>
<li>-a 显示目录和文件的大小</li>
<li>-h</li>
<li>-s 只显示总计大小(summary)</li>
</ul>
</li>
</ul>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-17-Linux-cmd-review" target="_blank">https://blog.harumonia.moe/posts/2020-01-17-Linux-cmd-review</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[python爬虫复习(3) splash && 数据分析小试]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-13-spider-review-3-splash</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-13-spider-review-3-splash</guid>
            <pubDate>Mon, 13 Jan 2020 22:19:59 GMT</pubDate>
            <content:encoded><![CDATA[<h2>引入</h2>
<p>根据笔者以往的爬虫经验，大部分的爬虫是在静态网页上完成的，爬虫所要做的只不过是提交请求，然后分析返回的页面即可。当然，api 本质上也可以作为静态页面来处理。这意味着只要掌握 requests 就可以完成 60%-80%的爬虫任务。</p>
<p>这是一个很惊人的占比，这里解释一下，静态页面可能听起来很 low，但是有着以加载速度更快、易于维护为核心的一系列优势，尤其是引入了 ajax 之后，实现了动态加载，通过更加频繁的前后端交互，使得用户的使用更加丝滑流畅。</p>
<p>但是总有一些网站是静态爬虫无法应付的。它们就是与 js 耦合度较高的，需要 js 进行渲染的页面，与上文所述的情况（前端只接收数据，而不用对数据进行计算层面的处理）不同，这类网站将部分的计算工作交托给前端，牺牲部分的用户体验来实现缓解服务器压力等一系列目的。</p>
<p>这就是剩下的 20%了。如何处理这些刺头呢？这就引出了本文的主角--splash。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-13-spider-review-3-splash" target="_blank">https://blog.harumonia.moe/posts/2020-01-13-spider-review-3-splash</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[python爬虫复习(2) 提高效率]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-08-spider-review-2-Improve-efficiency</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-08-spider-review-2-Improve-efficiency</guid>
            <pubDate>Wed, 08 Jan 2020 20:02:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>提高爬虫效率主要从三个方面开始复习。</p>
<ol>
<li>并发</li>
<li>ip</li>
<li>cookies</li>
</ol>
<p>并发必然引发的一个结果就是反爬虫机制，这种时候爬虫的效率不会因为并发而提高，反而会因为网站的防御机制拖累爬虫的速度。</p>
<p>自然而然地就引出了 2，代理爬虫。代理爬虫能够从多个 ip 发送请求，减小了单个 ip 的请求频率，自然触发反爬虫机制的概率也就小了很多。</p>
<p>但是新的问题又出现了，对于需要 <strong>登录</strong> 的网站，需要提交 cookies 来模拟登录情况，模拟登录不难，但是同一个 cookies 从不同的 ip 同时发送请求很明显不合常理，依然会触发反爬虫机制。</p>
<p>这是到目前为止我所遇到的影响爬虫效率的问题，就在这里做一个总结吧，如果后续遇到新的效率相关的问题，再做补充。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-08-spider-review-2-Improve-efficiency" target="_blank">https://blog.harumonia.moe/posts/2020-01-08-spider-review-2-Improve-efficiency</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[python爬虫复习(1) selenium]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-05-spider-review-1-selenium</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-05-spider-review-1-selenium</guid>
            <pubDate>Sun, 05 Jan 2020 19:49:45 GMT</pubDate>
            <content:encoded><![CDATA[<h2>写在前面</h2>
<p>selenium 虽然是新手友好型的爬虫工具，但是个人觉得绝对不是适合新手入门的爬虫。<br>
推荐在了解了 <strong>requests 体系</strong> 的爬虫，有了爬虫的一些常识之后，再来看 selenium。</p>
<p>事实上，requests 体系的爬虫已经足够满足现阶段大多数网站的爬虫需求</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-05-spider-review-1-selenium" target="_blank">https://blog.harumonia.moe/posts/2020-01-05-spider-review-1-selenium</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[项目中遇到的问题及解决方案(200103-1)]]></title>
            <link>https://blog.harumonia.moe/posts/2020-01-03-QS-in-project-200103-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2020-01-03-QS-in-project-200103-1</guid>
            <pubDate>Fri, 03 Jan 2020 20:53:46 GMT</pubDate>
            <content:encoded><![CDATA[<h2>echarts 节点点击事件</h2>
<p>由于项目需要在点击 echarts 的 items 或者 labels 的时候,修改 DOM 树,所以要做一个 echarts 的点击事件.</p>
<p>在网上找了很久,大多是没有解答的空问题.<br>
然后试图用 js 的原生方法来解决问题,发现确实有点麻烦,因为 echarts 在初期构建的时候,滤掉了冗余的信息,最后只给出了一个精简的绘图结果.</p>
<p>思考:echarts 原生的点击是如何实现的?</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2020-01-03-QS-in-project-200103-1" target="_blank">https://blog.harumonia.moe/posts/2020-01-03-QS-in-project-200103-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[人类群星闪耀时(笔记)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-12-25-Sternstunden-der-Menschheit-note</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-12-25-Sternstunden-der-Menschheit-note</guid>
            <pubDate>Wed, 25 Dec 2019 14:03:54 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>星空浩瀚.熠熠繁星,哪一颗会是我,亦或是哪一颗都不会是我.<br>
一瞬之间,思绪漾开,仿佛脚尖所点过的每一处,摇曳生莲.</p>
<p>-- 2019.10.19 于合肥</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-12-25-Sternstunden-der-Menschheit-note" target="_blank">https://blog.harumonia.moe/posts/2019-12-25-Sternstunden-der-Menschheit-note</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[浅谈Linux的使用与应用]]></title>
            <link>https://blog.harumonia.moe/posts/2019-12-24-some-discussion-of-Linux</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-12-24-some-discussion-of-Linux</guid>
            <pubDate>Tue, 24 Dec 2019 10:21:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>这是 Linux 课程的大作业...</p>
<p><img src="https://harumona-blog.oss-cn-beijing.aliyuncs.com/old_articles/410079949.jpg?Expires=1602316585&amp;" alt="head"></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-12-24-some-discussion-of-Linux" target="_blank">https://blog.harumonia.moe/posts/2019-12-24-some-discussion-of-Linux</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[软件开发本质论 笔记]]></title>
            <link>https://blog.harumonia.moe/posts/2019-12-14-The-Nature-of-Software-Development-note</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-12-14-The-Nature-of-Software-Development-note</guid>
            <pubDate>Sat, 14 Dec 2019 15:53:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>[美]Ron Jeffries</p>
<h2>价值</h2>
<p>80/20 法则:每个人想要的功能特性可能都不相同,但是没有人想要所有的功能特性.</p>
<p>首先推出能够产生价值的功能特性.</p>
<p>引导团队构建不仅对我们有意义,同时对用户也有意义的特性,即, <strong>最小可市场化功能特性</strong><br>
与最小可市场化功能特性相比,在更细的粒度上提供商业方向更能使我们受益.</p>
<p>价值的最大化在于频繁交付小的\以价值为中心的功能特性.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-12-14-The-Nature-of-Software-Development-note" target="_blank">https://blog.harumonia.moe/posts/2019-12-14-The-Nature-of-Software-Development-note</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[计算机组成原理复习]]></title>
            <link>https://blog.harumonia.moe/posts/2019-12-14-principles-of-computer-composition-review</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-12-14-principles-of-computer-composition-review</guid>
            <pubDate>Sat, 14 Dec 2019 15:49:42 GMT</pubDate>
            <content:encoded><![CDATA[<h1>一轮</h1>
<h2>题目</h2>
<h3>选择1</h3>
<ol>
<li>
<p>在 Cache 的地址映射中，若主存中的任意一块均可映射到 Cache 内的任意一快的位置上，则这种方法称为（ <strong>全相联映射</strong> ）</p>
</li>
<li>
<p>RA</p>
</li>
</ol>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-12-14-principles-of-computer-composition-review" target="_blank">https://blog.harumonia.moe/posts/2019-12-14-principles-of-computer-composition-review</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[操作系统复习(易错题&amp;&amp;概念题及部分解析)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-12-05-some-question-of-OS-review</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-12-05-some-question-of-OS-review</guid>
            <pubDate>Thu, 05 Dec 2019 07:03:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>选择</h2>
<p>1.单处理机计算机系统中，（A ）是并行操作的。</p>
<p>A.处理机操作和通道操作是并行的<br>
B.程序与程序<br>
C.主程序与子程序<br>
D.用户程序与操作系统程序</p>
<pre><code>单处理机系统
</code></pre>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-12-05-some-question-of-OS-review" target="_blank">https://blog.harumonia.moe/posts/2019-12-05-some-question-of-OS-review</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[操作系统一轮复习整理(文档部分)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-30-some-doc-of-OS-review</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-30-some-doc-of-OS-review</guid>
            <pubDate>Sat, 30 Nov 2019 18:25:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>概念集(重在概念的对比分析)</h1>
<h2>第一章</h2>
<h3>操作系统</h3>
<p>操作系统是一组能有效地组织和管理计算机硬件和软件资源，合理地对各类作业进行调度，以及方便用户使用的程序的集合。</p>
<h3>分时</h3>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-30-some-doc-of-OS-review" target="_blank">https://blog.harumonia.moe/posts/2019-11-30-some-doc-of-OS-review</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[图像处理课堂习题整理]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-25-Image-Processing-Review</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-25-Image-Processing-Review</guid>
            <pubDate>Mon, 25 Nov 2019 09:36:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>![图像处理-2.jpg](<a href="https://harumona-blog.oss-cn-beijing.aliyuncs.com/old_articles/%E5%9B%BE%E5%83%8F%E5%25">https://harumona-blog.oss-cn-beijing.aliyuncs.com/old_articles/图像�%</a></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-25-Image-Processing-Review" target="_blank">https://blog.harumonia.moe/posts/2019-11-25-Image-Processing-Review</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Java课设中的问题以及解决方案(三)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-24-Course-Design-of-Java-QS-3</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-24-Course-Design-of-Java-QS-3</guid>
            <pubDate>Sun, 24 Nov 2019 18:50:50 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>这次进行 Java 的大作业,虽然是一拖三,不过还是准备做得漂亮一点.Java 还是很有趣的,并且可能以后工作室项目能用得到.</p>
<p>嗯,如果做得好了,就请自己去搓一顿!</p>
<h2>思路</h2>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-24-Course-Design-of-Java-QS-3" target="_blank">https://blog.harumonia.moe/posts/2019-11-24-Course-Design-of-Java-QS-3</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Java课设中的问题以及解决方案(二)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-21-Course-Design-of-Java-QS-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-21-Course-Design-of-Java-QS-2</guid>
            <pubDate>Thu, 21 Nov 2019 19:15:40 GMT</pubDate>
            <content:encoded><![CDATA[<h2>windowbuilder 安装和使用</h2>
<p>类比于在 VS stdio 上开发 c#,eclipse 有对应的 GUI 开发工具,也就是 windowbuilder.<br>
当然同类型的工具也有 Ne</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-21-Course-Design-of-Java-QS-2" target="_blank">https://blog.harumonia.moe/posts/2019-11-21-Course-Design-of-Java-QS-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Java课设中的问题以及解决方案(一)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-17-Course-Design-of-Java-QS-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-17-Course-Design-of-Java-QS-1</guid>
            <pubDate>Sun, 17 Nov 2019 09:15:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>前言</h1>
<h2>开发环境</h2>
<ul>
<li>系统环境: macOS Catalina 10.15</li>
<li>java 版本: JDK12</li>
<li>开发环境: eclipse 2019-06 (4.12.0)</li>
<li>绘图工</li>
</ul>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-17-Course-Design-of-Java-QS-1" target="_blank">https://blog.harumonia.moe/posts/2019-11-17-Course-Design-of-Java-QS-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[周赛162]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-10-week-162</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-10-week-162</guid>
            <pubDate>Sun, 10 Nov 2019 14:20:00 GMT</pubDate>
            <content:encoded><![CDATA[<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-10-week-162" target="_blank">https://blog.harumonia.moe/posts/2019-11-10-week-162</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[关于前后端分离]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-09-discussion-about-frontend-backend-separation</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-09-discussion-about-frontend-backend-separation</guid>
            <pubDate>Sat, 09 Nov 2019 18:00:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>前言</h2>
<p>最近在对 18 级的同学们进行培训，正好讲到 jinja2 这一块，在进行了仔细的梳理之后，忽然发现 jinja2 这种渲染模式与国内目前的潮流--前后端分离所不符合。<br>
所以作为一个负</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-09-discussion-about-frontend-backend-separation" target="_blank">https://blog.harumonia.moe/posts/2019-11-09-discussion-about-frontend-backend-separation</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[136-137 出现的数字问题:位运算]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-06-single-number</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-06-single-number</guid>
            <pubDate>Wed, 06 Nov 2019 14:22:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/single-number/">No. 136 出现的数字问题(简单)</a></p>
<p>给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素。</p>
<p>说明：<br>
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗？</p>
<p><a href="https://leetcode-cn.com/problems/single-number-ii/">No. 137 出现的数字问题 II(中等)</a></p>
<p>给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现了三次。找出那个只出现了一次的元素。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-06-single-number" target="_blank">https://blog.harumonia.moe/posts/2019-11-06-single-number</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[N0.151 翻转字符串里的单词:多解法]]></title>
            <link>https://blog.harumonia.moe/posts/2019-11-04-reverse-words-in-a-string</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-11-04-reverse-words-in-a-string</guid>
            <pubDate>Mon, 04 Nov 2019 17:16:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/reverse-words-in-a-string/">N0.151 翻转字符串里的单词</a></p>
<p>给定一个字符串，逐个翻转字符串中的每个单词。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-11-04-reverse-words-in-a-string" target="_blank">https://blog.harumonia.moe/posts/2019-11-04-reverse-words-in-a-string</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.77 组合:回溯法]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-26-combinations</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-26-combinations</guid>
            <pubDate>Sat, 26 Oct 2019 14:47:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/combinations/">No.77 组合</a></p>
<p>给定两个整数 n 和 k，返回 1 ... n 中所有可能的 k 个数的组合。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-26-combinations" target="_blank">https://blog.harumonia.moe/posts/2019-10-26-combinations</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.85 最大矩形]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-25-maximal-rectangle</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-25-maximal-rectangle</guid>
            <pubDate>Fri, 25 Oct 2019 11:01:29 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/maximal-rectangle/">No.85 最大矩形</a></p>
<p>难度：<strong>困难</strong></p>
<p>给定一个仅包含 0 和 1 的二维二进制矩阵，找出只包含 1 的最大矩形，并返回其面积。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-25-maximal-rectangle" target="_blank">https://blog.harumonia.moe/posts/2019-10-25-maximal-rectangle</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.84 柱状图中最大的矩形:多解法]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-24-largest-rectangle-in-histogram</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-24-largest-rectangle-in-histogram</guid>
            <pubDate>Thu, 24 Oct 2019 20:34:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/largest-rectangle-in-histogram/">No.84 柱状图中最大的矩形</a></p>
<p>难度：<strong>困难</strong></p>
<p>给定 n 个非负整数，用来表示柱状图中各个柱子的高度。每个柱子彼此相邻，且宽度为 1 。</p>
<p>求在该柱状图中，能够勾勒出来的矩形的最大面积。</p>
<p><img src="https://assets.leetcode-cn.com/aliyun-lc-upload/uploads/2018/10/12/histogram.png" alt="p1"></p>
<p>以上是柱状图的示例，其中每个柱子的宽度为 1，给定的高度为 [2,1,5,6,2,3]。</p>
<p><img src="https://assets.leetcode-cn.com/aliyun-lc-upload/uploads/2018/10/12/histogram_area.png" alt="p2"></p>
<p>图中阴影部分为所能勾勒出的最大矩形面积，其面积为 10 个单位。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-24-largest-rectangle-in-histogram" target="_blank">https://blog.harumonia.moe/posts/2019-10-24-largest-rectangle-in-histogram</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No. 80 删除排序数组中的重复项 II]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-23-remove-duplicates-from-sorted-array-ii</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-23-remove-duplicates-from-sorted-array-ii</guid>
            <pubDate>Wed, 23 Oct 2019 09:51:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array-ii/">No.80 删除排序数组中的重复项 II</a></p>
<p>给定一个排序数组，你需要在原地删除重复出现的元素，使得每个元素最多出现两次，返回移除后数组的新长度。</p>
<p>不要使用额外的数组空间，你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-23-remove-duplicates-from-sorted-array-ii" target="_blank">https://blog.harumonia.moe/posts/2019-10-23-remove-duplicates-from-sorted-array-ii</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.72 编辑距离:动态规划]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-17-edit-distance</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-17-edit-distance</guid>
            <pubDate>Thu, 17 Oct 2019 20:37:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/edit-distance/">No.72 编辑距离</a></p>
<p>难度：<strong>困难</strong></p>
<p>给你两个单词 word1 和 word2，请你计算出将 word1 转换成 word2 所使用的最少操作数 。</p>
<p>你可以对一个单词进行如下三种操作：</p>
<p>插入一个字符<br>
删除一个字符<br>
替换一个字符</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-17-edit-distance" target="_blank">https://blog.harumonia.moe/posts/2019-10-17-edit-distance</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.71 简化路径:shashasha]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-14-simplify-path</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-14-simplify-path</guid>
            <pubDate>Mon, 14 Oct 2019 20:17:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/simplify-path/">No.71 简化路径</a></p>
<p>以 Unix 风格给出一个文件的绝对路径，你需要简化它。或者换句话说，将其转换为规范路径。</p>
<p>在 Unix 风格的文件系统中，一个点（.）表示当前目录本身；此外，两个点 （..）  表示将目录切换到上一级（指向父目录）；两者都可以是复杂相对路径的组成部分。更多信息请参阅：Linux / Unix 中的绝对路径 vs 相对路径</p>
<p>请注意，返回的规范路径必须始终以斜杠 / 开头，并且两个目录名之间必须只有一个斜杠 /。最后一个目录名（如果存在）不能以 / 结尾。此外，规范路径必须是表示绝对路径的最短字符串。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-14-simplify-path" target="_blank">https://blog.harumonia.moe/posts/2019-10-14-simplify-path</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[周赛158]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-13-week-158</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-13-week-158</guid>
            <pubDate>Sun, 13 Oct 2019 15:23:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>分割平衡字符串</h2>
<h3>题目</h3>
<p><a href="https://leetcode-cn.com/problems/split-a-string-in-balanced-strings/">传送门</a></p>
<blockquote></blockquote>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-13-week-158" target="_blank">https://blog.harumonia.moe/posts/2019-10-13-week-158</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.68 文本左右对齐:字符串题目总结(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-13-text-justification</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-13-text-justification</guid>
            <pubDate>Sun, 13 Oct 2019 08:50:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/text-justification/">No.68 文本左右对齐</a></p>
<p>难度：<strong>困难</strong></p>
<p>给定一个单词数组和一个长度 maxWidth，重新排版单词，使其成为每行恰好有 maxWidth 个字符，且左右两端对齐的文本。</p>
<p>你应该使用“贪心算法”来放置给定的单词；也就是说，尽可能多地往每行中放置单词。必要时可用空格 ' ' 填充，使得每行恰好有 maxWidth 个字符。</p>
<p>要求尽可能均匀分配单词间的空格数量。如果某一行单词间的空格不能均匀分配，则左侧放置的空格数要多于右侧的空格数。</p>
<p>文本的最后一行应为左对齐，且单词之间不插入额外的空格。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-13-text-justification" target="_blank">https://blog.harumonia.moe/posts/2019-10-13-text-justification</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.65 有效数字]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-12-valid-number</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-12-valid-number</guid>
            <pubDate>Sat, 12 Oct 2019 08:55:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/valid-number/">No.65 有效数字</a></p>
<p>难度：<strong>困难</strong></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-12-valid-number" target="_blank">https://blog.harumonia.moe/posts/2019-10-12-valid-number</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.64 最小路径和:动态规划]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-10-minimum-path-sum</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-10-minimum-path-sum</guid>
            <pubDate>Thu, 10 Oct 2019 09:31:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/minimum-path-sum/">No.64 最小路径和</a></p>
<p>给定一个包含非负整数的 mxn 网格，请找出一条从左上角到右下角的路径，使得路径上的数字总和为最小。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-10-minimum-path-sum" target="_blank">https://blog.harumonia.moe/posts/2019-10-10-minimum-path-sum</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[周赛157]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-06-week-157</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-06-week-157</guid>
            <pubDate>Sun, 06 Oct 2019 12:19:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>结果</h2>
<p>![res](<a href="https://harumona-blog.oss-cn-beijing.aliyuncs.com/old_articles/1437205549.png?Expires">https://harumona-blog.oss-cn-beijing.aliyuncs.com/old_articles/1437205549.png?Expires</a></p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-06-week-157" target="_blank">https://blog.harumonia.moe/posts/2019-10-06-week-157</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.48 旋转图像:数学]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-04-rotate-image</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-04-rotate-image</guid>
            <pubDate>Fri, 04 Oct 2019 09:14:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/rotate-image/">No.48 旋转图像</a></p>
<p>给定一个 n×n 的二维矩阵表示一个图像。</p>
<p>将图像顺时针旋转 90 度。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-04-rotate-image" target="_blank">https://blog.harumonia.moe/posts/2019-10-04-rotate-image</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.56 合并区间:双迭代器 && 国庆快乐]]></title>
            <link>https://blog.harumonia.moe/posts/2019-10-01-merge-intervals</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-10-01-merge-intervals</guid>
            <pubDate>Tue, 01 Oct 2019 20:05:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/merge-intervals/">No.56 合并区间</a></p>
<p>难度：<strong>中等</strong></p>
<p>给出一个区间的集合，请合并所有重叠的区间。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-10-01-merge-intervals" target="_blank">https://blog.harumonia.moe/posts/2019-10-01-merge-intervals</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.49 字母异位词分组:哈希表]]></title>
            <link>https://blog.harumonia.moe/posts/2019-09-30-group-anagrams</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-09-30-group-anagrams</guid>
            <pubDate>Mon, 30 Sep 2019 18:32:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/group-anagrams/">No.49 字母异位词分组</a></p>
<p>难度:<strong>中等</strong></p>
<p>给定一个字符串数组，将字母异位词组合在一起。字母异位词指字母相同，但排列不同的字符串。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-09-30-group-anagrams" target="_blank">https://blog.harumonia.moe/posts/2019-09-30-group-anagrams</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.39\40\216\377 组合总和1-4]]></title>
            <link>https://blog.harumonia.moe/posts/2019-09-27-summary-of-combination-1-4</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-09-27-summary-of-combination-1-4</guid>
            <pubDate>Fri, 27 Sep 2019 07:57:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>待补充</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-09-27-summary-of-combination-1-4" target="_blank">https://blog.harumonia.moe/posts/2019-09-27-summary-of-combination-1-4</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.34 在排序数组中查找元素的第一个和最后一个位置:二分法]]></title>
            <link>https://blog.harumonia.moe/posts/2019-09-26-find-first-and-last-position-of-element-in-sorted-array</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-09-26-find-first-and-last-position-of-element-in-sorted-array</guid>
            <pubDate>Thu, 26 Sep 2019 15:23:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array/">No.34 在排序数组中查找元素的第一个和最后一个位置</a></p>
<p>给定一个按照升序排列的整数数组 nums，和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。</p>
<p>你的算法时间复杂度必须是 O(log n) 级别。</p>
<p>如果数组中不存在目标值，返回 [-1, -1]。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-09-26-find-first-and-last-position-of-element-in-sorted-array" target="_blank">https://blog.harumonia.moe/posts/2019-09-26-find-first-and-last-position-of-element-in-sorted-array</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[今日简史-笔记]]></title>
            <link>https://blog.harumonia.moe/posts/2019-09-26-21-Lessons-for-the-21st-Century</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-09-26-21-Lessons-for-the-21st-Century</guid>
            <pubDate>Thu, 26 Sep 2019 07:46:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>摘录</h1>
<blockquote>
<p>本摘录由 Apple Books 导出</p>
</blockquote>
<p>笔记摘自</p>
<p>今日简史：人类命运大议题</p>
<p>[以色列] 尤瓦尔·赫拉利</p>
<p>2019 年 8 月 12 日 序</p>
<p>恐怖主义既是全球性的政治问题，也</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-09-26-21-Lessons-for-the-21st-Century" target="_blank">https://blog.harumonia.moe/posts/2019-09-26-21-Lessons-for-the-21st-Century</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[浅谈特征工程 Feature  Engineering]]></title>
            <link>https://blog.harumonia.moe/posts/2019-09-08-Feature-Engineering</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-09-08-Feature-Engineering</guid>
            <pubDate>Sun, 08 Sep 2019 16:05:25 GMT</pubDate>
            <content:encoded><![CDATA[<p>至此,看过了很多的机器学习的文章,发现大多是重于算法的讲解,但是机器学习是 <em>对数据集进行算法处理</em> ,数据集的重要地位不言而喻.<br>
个人认为,优质的数据集可以极大地提高模型精度和运算效率.一个很好的</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-09-08-Feature-Engineering" target="_blank">https://blog.harumonia.moe/posts/2019-09-08-Feature-Engineering</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[使用随机森林解决"泰坦尼克幸存"问题(1)——小试牛刀]]></title>
            <link>https://blog.harumonia.moe/posts/2019-09-01-Titanic-solution-via-RF</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-09-01-Titanic-solution-via-RF</guid>
            <pubDate>Sun, 01 Sep 2019 15:06:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>The sinking of the RMS Titanic is one of the most infamous shipwrecks in history. On April 15, 1912, during her maiden voyage, the Titanic sank after colliding with an iceberg, killing 1502 out of 2224 passengers and crew. This sensational tragedy shocked the international community and led to better safety regulations for ships.</p>
<p>One of the reasons that the shipwreck led to such loss of life was that there were not enough lifeboats for the passengers and crew. Although there was some element of luck involved in surviving the sinking, some groups of people were more likely to survive than others, such as women, children, and the upper-class.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-09-01-Titanic-solution-via-RF" target="_blank">https://blog.harumonia.moe/posts/2019-09-01-Titanic-solution-via-RF</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Be a better pythonista(3)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-28-Be_a_better_pythonista-3</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-28-Be_a_better_pythonista-3</guid>
            <pubDate>Wed, 28 Aug 2019 17:39:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>本节主要是函数和类的一些技巧操作.</p>
<p>当然,函数和类二者任意一个拿出来都是很巨量的篇幅,所以这里就只是选取了在项目中经常用到的一些技巧,并根据个人的实战经验来进行详细的阐述.</p>
<p>后续可能会进行增改(</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-28-Be_a_better_pythonista-3" target="_blank">https://blog.harumonia.moe/posts/2019-08-28-Be_a_better_pythonista-3</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[数据分析拾遗(不定期补充)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-23-DA-intro-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-23-DA-intro-1</guid>
            <pubDate>Fri, 23 Aug 2019 11:29:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>记录在实际操作过程中遇到遇到的一些有意思的使用法.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-23-DA-intro-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-23-DA-intro-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Introduction to data mining(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-17-Introduction_to_data_mining-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-17-Introduction_to_data_mining-1</guid>
            <pubDate>Sat, 17 Aug 2019 09:14:20 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇是笔者在学习 &quot;Introduction to data mining&quot;(《数据挖掘导论》)的英文最新版所记录的一些学习笔记。</p>
<p>2020.10.10 更新</p>
<p>很可惜的是，在多次迁移的过程中，本章的图片都丢失了。</p>
<p>食之无味，弃之可惜。所以暂且先保留在这里，以后再补全吧。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-17-Introduction_to_data_mining-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-17-Introduction_to_data_mining-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Be a better pythonista(2)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-14-Be-a-better-pythonista-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-14-Be-a-better-pythonista-2</guid>
            <pubDate>Wed, 14 Aug 2019 21:27:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>分为迭代器、文件读写、函数式编程三个部分，其中，前二者来源于 cookbook，其中加入了一些个人的理解和补正。函数式编程作为个人的扩充添加进来，主要参考了一些文章和书籍，因为很杂，就不一一列出。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-14-Be-a-better-pythonista-2" target="_blank">https://blog.harumonia.moe/posts/2019-08-14-Be-a-better-pythonista-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[scikit-learn 入门建议]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-12-scikit-learn-suggestion</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-12-scikit-learn-suggestion</guid>
            <pubDate>Mon, 12 Aug 2019 21:10:54 GMT</pubDate>
            <content:encoded><![CDATA[<p>在七月中旬,我曾经问过涛哥,sklearn 的学习侧重,他给的建议是先学习应用.这与我重应用,补理论的观点不谋而合.</p>
<p>这是针对零基础的入门方法.对于数学功底一般(如果没有,那就还是先补一补数学吧.</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-12-scikit-learn-suggestion" target="_blank">https://blog.harumonia.moe/posts/2019-08-12-scikit-learn-suggestion</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[文化苦旅]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-12-9787806276983-note</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-12-9787806276983-note</guid>
            <pubDate>Mon, 12 Aug 2019 08:30:14 GMT</pubDate>
            <content:encoded><![CDATA[<p>《文化苦旅》这本书在高中时已经读过一次，不过当时终究是阅历尚浅，不少的所谓的体会颇有“为赋新词强说愁”之感。</p>
<p>2019 年的暑假，正巧颇有闲暇，所以再次翻开此书。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-12-9787806276983-note" target="_blank">https://blog.harumonia.moe/posts/2019-08-12-9787806276983-note</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[计算机设计大赛国赛 and 芜湖游记（2）]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-10-jsjds-travel-notes-of-wuhu-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-10-jsjds-travel-notes-of-wuhu-2</guid>
            <pubDate>Sat, 10 Aug 2019 15:59:27 GMT</pubDate>
            <content:encoded><![CDATA[<h1>第三日</h1>
<p>没有想到这会是我在芜湖的最后一天.</p>
<p>因为台风过境,大部分的动车班次都被停运.</p>
<p>我还没有知道比赛的结果如何,我还没有去参观芜湖的人文景致,却就要回去了.</p>
<p>正巧读到余秋雨所写的王朝更</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-10-jsjds-travel-notes-of-wuhu-2" target="_blank">https://blog.harumonia.moe/posts/2019-08-10-jsjds-travel-notes-of-wuhu-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[计算机设计大赛国赛 and 芜湖游记（1）]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-09-jsjds-travel-notes-of-wuhu-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-09-jsjds-travel-notes-of-wuhu-1</guid>
            <pubDate>Fri, 09 Aug 2019 15:31:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>一个很粗糙的作品，莫名其妙的就通过了省赛，然后莫名其妙地就到了国赛。。。算了，就好好享受一下吧，至少是要不 gong 虚 fei 此 chi 行 he，哈哈。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-09-jsjds-travel-notes-of-wuhu-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-09-jsjds-travel-notes-of-wuhu-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[2019医学信息创新工作室暑期个人总结]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-08-2019summer-summary</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-08-2019summer-summary</guid>
            <pubDate>Thu, 08 Aug 2019 10:08:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>引言</h1>
<p>探寻不到便猜测，猜测不到便想象。只有走在路上，才能摆脱局限，摆脱执着，让所有的选择、探寻、猜测、想象都生气勃勃。</p>
<h1>正文</h1>
<p>自 7 月 1 日而今,39 天.</p>
<p>我收获了许多,知识\</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-08-2019summer-summary" target="_blank">https://blog.harumonia.moe/posts/2019-08-08-2019summer-summary</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[docker (1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-07-docker-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-07-docker-1</guid>
            <pubDate>Wed, 07 Aug 2019 09:56:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>参考 《第一本 docker 书》《docker 深入浅出》</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-07-docker-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-07-docker-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[工作室异闻录(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-06-Anecdote-of-studio</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-06-Anecdote-of-studio</guid>
            <pubDate>Tue, 06 Aug 2019 18:55:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>前言</h1>
<blockquote>
<p>VENI VIDI VICI。 --凯撒</p>
</blockquote>
<p>我将这句话写在了大二篇章的中叶。</p>
<p>在此之前，我是浮萍，在图书馆，在教学楼，在静谧的树林，徘徊游荡。<br>
在此之后，我是一壶酒，悠然地感受岁月</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-06-Anecdote-of-studio" target="_blank">https://blog.harumonia.moe/posts/2019-08-06-Anecdote-of-studio</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Be a better pythonista(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-06-Be-a-better-pythonista-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-06-Be-a-better-pythonista-1</guid>
            <pubDate>Tue, 06 Aug 2019 17:21:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>Be a better pythonista 是新开的一个坑，如其名，根本目的是为了成为一个更棒的 python 开发者。</p>
<p>如何成为一个 better pythonista？个人认为，是 python 的特性、高级语法还有对 python 形式的编程思维的理解和贯彻，这也是本系列的侧重点。</p>
<p>Be a better pythonista 计划用前四部分完成对 cookbook 的重读，中间会对一些代码进行修正处理，并且会穿插一些个人的理解。同时，还会加入一些在开发中所遇到的一些事情、写作同时遇到的一些值得分享的东西，以为 dessert。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-06-Be-a-better-pythonista-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-06-Be-a-better-pythonista-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[sklearn应用性学习(2)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-05-learning-sklearn-via-practice-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-05-learning-sklearn-via-practice-2</guid>
            <pubDate>Mon, 05 Aug 2019 18:58:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>应用性学习置于构造性学习之后，在理解 sklearn 的构造，各种参数的理论依据的基础上，进行实践性的学习。</p>
<p>本篇主要针对监督学习进行浅尝。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-05-learning-sklearn-via-practice-2" target="_blank">https://blog.harumonia.moe/posts/2019-08-05-learning-sklearn-via-practice-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[sklearn应用性学习(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-04-learning-sklearn-via-practice-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-04-learning-sklearn-via-practice-1</guid>
            <pubDate>Sun, 04 Aug 2019 11:29:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>应用性学习置于构造性学习之后，在理解 sklearn 的构造，各种参数的理论依据的基础上，进行实践性的学习。</p>
<p>本篇主要针对无监督学习进行浅尝。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-04-learning-sklearn-via-practice-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-04-learning-sklearn-via-practice-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[sklearn构造性学习(1)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-08-02-learning-sklearn-via-theory-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-08-02-learning-sklearn-via-theory-1</guid>
            <pubDate>Fri, 02 Aug 2019 08:41:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>构造性学习中，以理论为主，并结合一定的例子</p>
<p>本篇是机器学习的入门篇，主体的脉络差不多近似于 《数据挖掘导论》 一书</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-08-02-learning-sklearn-via-theory-1" target="_blank">https://blog.harumonia.moe/posts/2019-08-02-learning-sklearn-via-theory-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[flask部署(2)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-30-questions-and-solutions-of-flask-deploy-2</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-30-questions-and-solutions-of-flask-deploy-2</guid>
            <pubDate>Tue, 30 Jul 2019 21:29:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>上一篇的部署是用的 uwsgi，这次听说 gunicorn 很方便，就试了一下</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-30-questions-and-solutions-of-flask-deploy-2" target="_blank">https://blog.harumonia.moe/posts/2019-07-30-questions-and-solutions-of-flask-deploy-2</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.31 下一个排列]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-22-No31-next-permutation</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-22-No31-next-permutation</guid>
            <pubDate>Mon, 22 Jul 2019 09:10:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/next-permutation/">No.31 下一个排列</a></p>
<p>实现获取下一个排列的函数，算法需要将给定数字序列重新排列成字典序中下一个更大的排列。</p>
<p>如果不存在下一个更大的排列，则将数字重新排列成最小的排列（即升序排列）。</p>
<p>必须原地修改，只允许使用额外常数空间。</p>
<p>以下是一些例子，输入位于左侧列，其相应输出位于右侧列。</p>
<pre><code>1,2,3 → 1,3,2
3,2,1 → 1,2,3
1,1,5 → 1,5,1
</code></pre>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-22-No31-next-permutation" target="_blank">https://blog.harumonia.moe/posts/2019-07-22-No31-next-permutation</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[桂苑酌记小纲]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-20-drink-with-reading</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-20-drink-with-reading</guid>
            <pubDate>Sat, 20 Jul 2019 22:15:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>引言</h1>
<blockquote>
<p>花间一壶酒，独酌无相亲。举杯邀明月，对饮成三人。<br>
——李白《月下独酌四首·其一》</p>
</blockquote>
<h1>题解</h1>
<p>先来解一下为什么要叫做桂苑酌记吧，这当然不是什么一拍脑门随手所书。</p>
<p>之所以称之为</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-20-drink-with-reading" target="_blank">https://blog.harumonia.moe/posts/2019-07-20-drink-with-reading</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[numpy个人整理(初阶)]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-19-numpy-simple-organization</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-19-numpy-simple-organization</guid>
            <pubDate>Fri, 19 Jul 2019 20:35:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>NumPy 是 Python 语言的一个扩展程序库。支持高阶大量的维度数组与矩阵运算，此外也针对数组运算提供大量的数学函数库。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-19-numpy-simple-organization" target="_blank">https://blog.harumonia.moe/posts/2019-07-19-numpy-simple-organization</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[起居杂录小纲]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-19-dailylife</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-19-dailylife</guid>
            <pubDate>Fri, 19 Jul 2019 19:08:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>引言</h1>
<blockquote>
<p>正经人谁写日记啊？ --《邪不压正》</p>
</blockquote>
<p><strong>纲者,维紘绳也.从糸冈声.<br>
它将是整篇起居录的起点,也是结点.</strong></p>
<h1>正文</h1>
<p>如第一引言所述，话虽然是戏谑调侃,但我对这个观点是非常赞</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-19-dailylife" target="_blank">https://blog.harumonia.moe/posts/2019-07-19-dailylife</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[H5初阶学习笔记]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-18-H5-note</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-18-H5-note</guid>
            <pubDate>Thu, 18 Jul 2019 08:21:00 GMT</pubDate>
            <content:encoded><![CDATA[<h1>新增主体结构元素</h1>
<h2>页面布局</h2>
<table>
<thead>
<tr>
<th>元素名</th>
<th>描述</th>
</tr>
</thead>
</table>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-18-H5-note" target="_blank">https://blog.harumonia.moe/posts/2019-07-18-H5-note</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Python 数据挖掘基础]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-16-Python-basic-of-DM</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-16-Python-basic-of-DM</guid>
            <pubDate>Tue, 16 Jul 2019 19:37:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>本篇记载了如何在 python 中使用数据挖掘的相关的模块。<br>
都是基础级的东西了。</p>
<pre><code>参考：
    《python数据科学入门》
    在学习时零散地从网站、博客上获得的相关的知识
</code></pre>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-16-Python-basic-of-DM" target="_blank">https://blog.harumonia.moe/posts/2019-07-16-Python-basic-of-DM</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[担任项目经理的第一周]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-16-the-first-week-to-be-a-project-manager</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-16-the-first-week-to-be-a-project-manager</guid>
            <pubDate>Tue, 16 Jul 2019 17:19:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>有幸担任了工作室的“中医基础信息管理”项目的项目经理，于此写下第一周的一些心得体会，以作参考。</p>
<p>先使用 CVS 来打个人生的 tag 吧</p>
<p>milestone 3.1</p>
<h2>个人体会</h2>
<p>在独立完</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-16-the-first-week-to-be-a-project-manager" target="_blank">https://blog.harumonia.moe/posts/2019-07-16-the-first-week-to-be-a-project-manager</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[flask 开发心得 part 1]]></title>
            <link>https://blog.harumonia.moe/posts/2019-07-16-flask-experience-part</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-07-16-flask-experience-part</guid>
            <pubDate>Tue, 16 Jul 2019 17:15:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>这个心得是我在进行“中医基础数据管理”系统的开发过程中所遇到的一些问题以及其解决方法。</p>
<p>截止到 2019 年 07 月 16 日 17:22:33，项目的第一阶段开始进入后期，所以在这里写下第一阶</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-07-16-flask-experience-part" target="_blank">https://blog.harumonia.moe/posts/2019-07-16-flask-experience-part</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[N皇后问题]]></title>
            <link>https://blog.harumonia.moe/posts/2019-06-11-NQueen</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-06-11-NQueen</guid>
            <pubDate>Tue, 11 Jun 2019 15:01:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/n-queens/">No.51 N 皇后问题</a></p>
<p>n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上，并且使皇后彼此之间不能相互攻击。</p>
<p><img src="https://assets.leetcode-cn.com/aliyun-lc-upload/uploads/2018/10/12/8-queens.png" alt="question"></p>
<p>上图为 8 皇后问题的一种解法。</p>
<p>给定一个整数 n，返回所有不同的 n 皇后问题的解决方案。</p>
<p>每一种解法包含一个明确的 n 皇后问题的棋子放置方案，该方案中 'Q' 和 '.' 分别代表了皇后和空位。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-06-11-NQueen" target="_blank">https://blog.harumonia.moe/posts/2019-06-11-NQueen</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[No.79]]></title>
            <link>https://blog.harumonia.moe/posts/2019-06-11-No79</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-06-11-No79</guid>
            <pubDate>Tue, 11 Jun 2019 09:01:00 GMT</pubDate>
            <content:encoded><![CDATA[<p><a href="https://leetcode-cn.com/problems/word-search">No.79 单词搜索</a></p>
<p>给定一个二维网格和一个单词，找出该单词是否存在于网格中。</p>
<p>单词必须按照字母顺序，通过相邻的单元格内的字母构成，其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-06-11-No79" target="_blank">https://blog.harumonia.moe/posts/2019-06-11-No79</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[python进阶 手札]]></title>
            <link>https://blog.harumonia.moe/posts/2019-04-14-python-advanced</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-04-14-python-advanced</guid>
            <pubDate>Sun, 14 Apr 2019 17:42:02 GMT</pubDate>
            <content:encoded><![CDATA[<p>关于 python 的内置函数以及一些高阶的技巧的学习</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-04-14-python-advanced" target="_blank">https://blog.harumonia.moe/posts/2019-04-14-python-advanced</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[flask部署的问题及解决]]></title>
            <link>https://blog.harumonia.moe/posts/2019-03-11-questions-and-solutions-of-flask-deploy-1</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-03-11-questions-and-solutions-of-flask-deploy-1</guid>
            <pubDate>Mon, 11 Mar 2019 15:00:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>基于 Ray 的<a href="https://www.cnblogs.com/Ray-liang/p/4173923.html">阿里云部署 Flask + WSGI + Nginx 详解<br>
</a>对我所做的选课模拟系统进行了服务器端的部署。<br>
环境：flask uwsgi Ubuntu Nginx</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-03-11-questions-and-solutions-of-flask-deploy-1" target="_blank">https://blog.harumonia.moe/posts/2019-03-11-questions-and-solutions-of-flask-deploy-1</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[P站爬虫v2.0]]></title>
            <link>https://blog.harumonia.moe/posts/2019-01-06-pixiv-spider</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2019-01-06-pixiv-spider</guid>
            <pubDate>Sun, 06 Jan 2019 14:22:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>经过半个月额折腾，终于完成了 P 站爬虫 v2.0，现在可以根据关注列表来爬取关注对象的图片，唯一要做的只是输入账号密码而已。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2019-01-06-pixiv-spider" target="_blank">https://blog.harumonia.moe/posts/2019-01-06-pixiv-spider</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[我的第一只爬虫= =]]></title>
            <link>https://blog.harumonia.moe/posts/2018-12-26-my-first-spider</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-12-26-my-first-spider</guid>
            <pubDate>Wed, 26 Dec 2018 09:20:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>基于参考资料《Python 网络爬虫从入门到实践》改编而成的用于爬取 typecho 框架下 handsome 主题的主标题信息的爬虫代码。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-12-26-my-first-spider" target="_blank">https://blog.harumonia.moe/posts/2018-12-26-my-first-spider</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[蓝桥杯二三事（第一阶段施工完毕）]]></title>
            <link>https://blog.harumonia.moe/posts/2018-12-19-sth-of-blue-bridge</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-12-19-sth-of-blue-bridge</guid>
            <pubDate>Wed, 19 Dec 2018 08:42:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>这里将会记载做蓝桥杯的题目时的一些感悟以及灵感（还有一些无聊的吐槽啦。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-12-19-sth-of-blue-bridge" target="_blank">https://blog.harumonia.moe/posts/2018-12-19-sth-of-blue-bridge</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[关于Mac Xcode上使用c++读取txt文件]]></title>
            <link>https://blog.harumonia.moe/posts/2018-12-15-read-txt-file-via-cpp-on-Xcode</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-12-15-read-txt-file-via-cpp-on-Xcode</guid>
            <pubDate>Sat, 15 Dec 2018 16:34:28 GMT</pubDate>
            <content:encoded><![CDATA[<h1>路径</h1>
<p>Product -&gt;Scheme -&gt;Edit Scheme-&gt;左边选择 Run 选择-&gt;选择 Option-&gt;在 Working Dictionary 选项里面，打钩 Using cu</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-12-15-read-txt-file-via-cpp-on-Xcode" target="_blank">https://blog.harumonia.moe/posts/2018-12-15-read-txt-file-via-cpp-on-Xcode</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[鬼畜的回形数]]></title>
            <link>https://blog.harumonia.moe/posts/2018-12-02-number-of-rounds</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-12-02-number-of-rounds</guid>
            <pubDate>Sun, 02 Dec 2018 18:48:11 GMT</pubDate>
            <content:encoded><![CDATA[<pre><code class="language-c++">#include &lt;iostream&gt;


using namespace std;

int judge(int n,int m)
{
    if (n%2==0) {
</code></pre>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-12-02-number-of-rounds" target="_blank">https://blog.harumonia.moe/posts/2018-12-02-number-of-rounds</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[杂物]]></title>
            <link>https://blog.harumonia.moe/posts/2018-12-02-others</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-12-02-others</guid>
            <pubDate>Sun, 02 Dec 2018 16:16:34 GMT</pubDate>
            <content:encoded><![CDATA[<pre><code class="language-c++">/*报时
 #include &lt;iostream&gt;
#include &lt;map&gt;
#include &lt;string&gt;

using namespace std;

map&lt;int, s</code></pre>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-12-02-others" target="_blank">https://blog.harumonia.moe/posts/2018-12-02-others</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[c++实现字典（初步）]]></title>
            <link>https://blog.harumonia.moe/posts/2018-11-21-cpp-dictionary</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-11-21-cpp-dictionary</guid>
            <pubDate>Wed, 21 Nov 2018 13:47:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>这个字典程序算是最近学习 c++的一个成果集合了，就这样吧。（2018 年 11 月 21 日 13:47:00。）</p>
<pre><code class="language-c++">//
//  main.cpp
//  zidian
//
//</code></pre>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-11-21-cpp-dictionary" target="_blank">https://blog.harumonia.moe/posts/2018-11-21-cpp-dictionary</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[顺序容器&&泛型算法&&关联容器]]></title>
            <link>https://blog.harumonia.moe/posts/2018-11-20-container-generic</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-11-20-container-generic</guid>
            <pubDate>Tue, 20 Nov 2018 18:32:00 GMT</pubDate>
            <content:encoded><![CDATA[<blockquote>
<p>在网络上浏览了很多关于 STL 的资料，但是大多都不能令我满意，所以这里以一个初学者的视角来学习一遍 STL</p>
</blockquote>
<p>ps:图片由于一些原因（懒），就不放上来了，大抵就是对应标题下的一些表格。</p>
<p>资料</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-11-20-container-generic" target="_blank">https://blog.harumonia.moe/posts/2018-11-20-container-generic</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[图的生成和连通性判断实验]]></title>
            <link>https://blog.harumonia.moe/posts/2018-10-31-experiment-graph-generate-and-connectedness</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-10-31-experiment-graph-generate-and-connectedness</guid>
            <pubDate>Wed, 31 Oct 2018 15:05:00 GMT</pubDate>
            <content:encoded><![CDATA[<h2>这是 2018-10-31 的实验任务</h2>
<p>描述：给定一个无向图，一共 n 个点，m 条边。请编写一个程序实现两种操作： D x y  从原图中删除连接 x，y 节点的边。 Q x y  询问</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-10-31-experiment-graph-generate-and-connectedness" target="_blank">https://blog.harumonia.moe/posts/2018-10-31-experiment-graph-generate-and-connectedness</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[VPS上的一些好物]]></title>
            <link>https://blog.harumonia.moe/posts/2018-10-28-sth-good-on-VPS</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-10-28-sth-good-on-VPS</guid>
            <pubDate>Sun, 28 Oct 2018 10:20:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>主要介绍了在个人服务器上如何一键安装 ss\ssr，Mtproto（telegram）,以及 ssh 突然断开的处理方法(主要是国外服务器容易出现断连的问题)。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-10-28-sth-good-on-VPS" target="_blank">https://blog.harumonia.moe/posts/2018-10-28-sth-good-on-VPS</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[Programmer摘要]]></title>
            <link>https://blog.harumonia.moe/posts/2018-10-28-abstract-of-Programmer</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-10-28-abstract-of-Programmer</guid>
            <pubDate>Sun, 28 Oct 2018 09:52:58 GMT</pubDate>
            <content:encoded><![CDATA[<p>程序员修炼手册（其一）</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-10-28-abstract-of-Programmer" target="_blank">https://blog.harumonia.moe/posts/2018-10-28-abstract-of-Programmer</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[游戏改变世界 笔记]]></title>
            <link>https://blog.harumonia.moe/posts/2018-10-28-game-change-the-world</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-10-28-game-change-the-world</guid>
            <pubDate>Sun, 28 Oct 2018 09:50:09 GMT</pubDate>
            <content:encoded><![CDATA[<blockquote>
<p>现实已经破碎，而我们需要用游戏去修复它。</p>
</blockquote>
<p>在阅读此书的 2018 年，正值轻狂，野心勃勃，想做一款属于自己的游戏。当然这个念头在这本书读到一半的时候依旧消散得差不多了。终究，一款伟大的游戏，它的诞生所需要的天时地利人和，非一人之力可及啊。</p>
<p>不过也拜本书所赐，在游戏鉴赏一方面有了一些自己的想法，不至于再人云亦云，也算是一个不错的收获。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-10-28-game-change-the-world" target="_blank">https://blog.harumonia.moe/posts/2018-10-28-game-change-the-world</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[数学之美笔记]]></title>
            <link>https://blog.harumonia.moe/posts/2018-10-28-art-of-math</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-10-28-art-of-math</guid>
            <pubDate>Sun, 28 Oct 2018 09:47:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>大学读书笔记之一:数学之美</p>
<blockquote>
<p>数学，正确看待时，不仅具有真理，还具有至高的美-一种冷而严峻的美，一种屹立不摇的美，如雕塑一般，一种不为我们软弱天性所动摇的美。也不像绘画或音乐有富丽堂皇的装饰，而是纯粹地崇高、绝对地完美，是最伟大的艺术，然而这是极其纯净的美，只有这个最伟大的艺术才能显示出最严格的完美。数学中一定能找到最卓越的试金石——超越自我时之喜悦感，如同写诗。<br>
-- Bertrand Arthur William Russell</p>
</blockquote>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-10-28-art-of-math" target="_blank">https://blog.harumonia.moe/posts/2018-10-28-art-of-math</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
        <item>
            <title><![CDATA[万历十五年]]></title>
            <link>https://blog.harumonia.moe/posts/2018-10-28-a-Year-of-No-Significance-The-Ming-Dynasty-in-Decline</link>
            <guid isPermaLink="false">https://blog.harumonia.moe/posts/2018-10-28-a-Year-of-No-Significance-The-Ming-Dynasty-in-Decline</guid>
            <pubDate>Sun, 28 Oct 2018 09:28:00 GMT</pubDate>
            <content:encoded><![CDATA[<p>《万历十五年》（英语：1587, a Year of No Significance: The Ming Dynasty in Decline）是美籍华裔历史学家黄仁宇最出名、也是体现其“大历史观”的一部明史研究专著。</p>
<br/><p>访问 <a href="https://blog.harumonia.moe/posts/2018-10-28-a-Year-of-No-Significance-The-Ming-Dynasty-in-Decline" target="_blank">https://blog.harumonia.moe/posts/2018-10-28-a-Year-of-No-Significance-The-Ming-Dynasty-in-Decline</a> 阅读全文。</p>]]></content:encoded>
            <author>i@valaxy.site (harumonia)</author>
        </item>
    </channel>
</rss>