-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
87 lines (86 loc) · 27.3 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<!doctype html>
<html lang="zh"><head>
<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"><meta><title>言小溪的技术交流网</title><link rel="manifest" href="/manifest.json"><meta name="application-name" content="言小溪的博客"><meta name="msapplication-TileImage" content="/img/favicon.svg"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-title" content="言小溪的博客"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="description" content="欢迎大家来到我的博客,我会尽量写很多优质的文档或文章分享给大家,感谢关注!"><meta property="og:type" content="website"><meta property="og:title" content="言小溪的博客"><meta property="og:url" content="https://enncy.github.io/"><meta property="og:site_name" content="言小溪的博客"><meta property="og:description" content="欢迎大家来到我的博客,我会尽量写很多优质的文档或文章分享给大家,感谢关注!"><meta property="og:locale" content="zh_CN"><meta property="og:image" content="https://enncy.github.io/img/og_image.png"><meta property="article:author" content="言小溪"><meta property="article:tag" content="博客,代码,前端,后端,爬虫"><meta property="twitter:card" content="summary"><meta property="twitter:image" content="/img/og_image.png"><script type="application/ld+json">{"@context":"https://schema.org","@type":"BlogPosting","mainEntityOfPage":{"@type":"WebPage","@id":"https://enncy.github.io"},"headline":"言小溪的博客","image":["https://enncy.github.io/img/og_image.png"],"author":{"@type":"Person","name":"言小溪"},"publisher":{"@type":"Organization","name":"言小溪的博客","logo":{"@type":"ImageObject","url":{"text":"言小溪的博客"}}},"description":"欢迎大家来到我的博客,我会尽量写很多优质的文档或文章分享给大家,感谢关注!"}</script><link rel="alternate" href="/atom.xml" title="言小溪的博客" type="application/atom+xml"><link rel="icon" href="/img/favicon.svg"><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.15.2/css/all.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/highlight.js@9.12.0/styles/atom-one-light.css"><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;600&family=Source+Code+Pro"><link rel="stylesheet" href="/css/default.css"><style>body>.footer,body>.navbar,body>.section{opacity:0}</style><!--!--><script>var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "//hm.baidu.com/hm.js?61c20221bfaeeefdaa6dbeb854924c56";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();</script><script src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js" defer></script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/cookieconsent@3.1.1/build/cookieconsent.min.css"><!--!--><!--!--><meta name="generator" content="Hexo 6.0.0"></head><body class="is-2-column"><nav class="navbar navbar-main"><div class="container"><div class="navbar-brand justify-content-center"><a class="navbar-item navbar-logo" href="/">言小溪的博客</a></div><div class="navbar-menu"><div class="navbar-start"><a class="navbar-item is-active" href="/">首页</a><a class="navbar-item" href="/archives">归档</a><a class="navbar-item" href="/categories">分类</a><a class="navbar-item" href="/tags">标签</a><a class="navbar-item" href="/about">关于</a></div><div class="navbar-end"><a class="navbar-item" target="_blank" rel="noopener" title="github项目地址" href="https://github.com/enncy/enncy.github.io"><i class="fab fa-github"></i></a><a class="navbar-item search" title="搜索" href="javascript:;"><i class="fas fa-search"></i></a></div></div></div></nav><section class="section"><div class="container"><div class="columns"><div class="column order-2 column-main is-8-tablet is-8-desktop is-8-widescreen"><div class="card"><article class="card-content article" role="article"><div class="article-meta is-size-7 is-uppercase level is-mobile"><div class="level-left"><span class="level-item"><time dateTime="2022-01-21T04:55:47.000Z" title="2022/1/21 下午12:55:47">2022-01-21</time>发表</span><span class="level-item"><time dateTime="2022-01-21T05:06:43.959Z" title="2022/1/21 下午1:06:43">2022-01-21</time>更新</span><span class="level-item">几秒读完 (大约35个字)</span></div></div><h1 class="title is-3 is-size-4-mobile"><a class="link-muted" href="/2022/01/21/%E7%BD%AE%E9%A1%B6%E6%96%87%E7%AB%A0/">置顶文章</a></h1><div class="content"><p>欢迎来到我的博客 😁, 有任何问题,请到 <a href="/about">关于</a> 页面获取我的联系方式,联系我。</p>
</div></article></div><div class="card"><article class="card-content article" role="article"><div class="article-meta is-size-7 is-uppercase level is-mobile"><div class="level-left"><span class="level-item"><time dateTime="2022-01-24T10:20:47.000Z" title="2022/1/24 下午6:20:47">2022-01-24</time>发表</span><span class="level-item"><time dateTime="2022-01-24T14:07:25.459Z" title="2022/1/24 下午10:07:25">2022-01-24</time>更新</span><span class="level-item"><a class="link-muted" href="/categories/%E7%BD%91%E8%AF%BE/">网课</a></span><span class="level-item">5 分钟读完 (大约792个字)</span></div></div><h1 class="title is-3 is-size-4-mobile"><a class="link-muted" href="/2022/01/24/%E7%BD%91%E8%AF%BE/%E7%BD%91%E8%AF%BE%E6%95%99%E7%A8%8B(1)%20%20%E5%89%8D%E8%A8%80/">网课教程(1) 前言</a></h1><div class="content"><blockquote>
<p>欢迎来到skeleton系列教程 :<a target="_blank" rel="noopener" href="https://blog.csdn.net/qq_31254489/category_10415167.html">网课脚本编写教程</a></p>
</blockquote>
<h2 id="什么是脚本?"><a class="header-anchor" href="#什么是脚本?"></a>什么是脚本?</h2>
<blockquote>
<p>脚本(Script),是使用一种特定的描述性语言,依据一定的格式编写的可执行文件。<br>
脚本语言又被称为扩建的语言, 或者动态语言, 是一种编程语言, 用来控制软件应用程序, 脚本通常是以文本 (ASCⅡ) 保存, 只是在被调用时进行解释或者编译。</p>
</blockquote></div><a class="article-more button is-small is-size-7" href="/2022/01/24/%E7%BD%91%E8%AF%BE/%E7%BD%91%E8%AF%BE%E6%95%99%E7%A8%8B(1)%20%20%E5%89%8D%E8%A8%80/#more">阅读更多</a></article></div><div class="card"><article class="card-content article" role="article"><div class="article-meta is-size-7 is-uppercase level is-mobile"><div class="level-left"><span class="level-item"><time dateTime="2022-01-23T16:00:00.000Z" title="2022/1/24 上午12:00:00">2022-01-24</time>发表</span><span class="level-item"><time dateTime="2022-01-24T15:57:42.549Z" title="2022/1/24 下午11:57:42">2022-01-24</time>更新</span><span class="level-item"><a class="link-muted" href="/categories/jpptr/">jpptr</a></span><span class="level-item">2 分钟读完 (大约344个字)</span></div></div><h1 class="title is-3 is-size-4-mobile"><a class="link-muted" href="/jpptr-docs/action/">Jpptr - 动作(Action)</a></h1><div class="content"><p>动作的执行是由 <a href="/jpptr-docs/parser/">解析器</a> 和 <a href="/jpptr-docs/plugin/">插件</a> 一起协作执行的。</p>
<p>如下动作</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><code class="hljs json">[<span class="hljs-string">"goto"</span>, <span class="hljs-string">"https://enncy.github.io/jpptr/test.html"</span>]<br></code></pre></td></tr></table></figure>
<p>ArrayParser 将其解析成</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><code class="hljs json">{<br> <span class="hljs-attr">"use"</span>: <span class="hljs-string">"function"</span>,<br> <span class="hljs-attr">"name"</span>: <span class="hljs-string">"goto"</span>,<br> <span class="hljs-attr">"args"</span>: [<span class="hljs-string">"https://enncy.github.io/jpptr/test.html"</span>]<br>}<br></code></pre></td></tr></table></figure>
<p>最后再由 FunctionPlugin 去执行 puppeteer 方法</p>
<figure class="highlight js"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><code class="hljs js">page.goto(<span class="hljs-string">"https://enncy.github.io/jpptr/test.html"</span>);<br></code></pre></td></tr></table></figure>
<hr>
<p>解析器和插件都由 jpptr 默认加载</p>
<p>你可以在动作文件中使用 register 参数进行新的解析器或者插件注册, 甚至可以覆盖原有的默认模块</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br></pre></td><td class="code"><pre><code class="hljs json">{<br> <span class="hljs-attr">"register"</span>:{<br> <span class="hljs-attr">"parsers"</span>:[<br> {<br> <span class="hljs-attr">"name"</span>:<span class="hljs-string">"number-parser"</span>,<br> <span class="hljs-attr">"parser"</span>:<span class="hljs-string">"./number-parser.js"</span><br> }<br> ],<br> <span class="hljs-attr">"plugins"</span>:[<br> {<br> <span class="hljs-attr">"name"</span>:<span class="hljs-string">"goto-plugin"</span>,<br> <span class="hljs-attr">"plugin"</span>:<span class="hljs-string">"./goto-plugin.js"</span><br> }<br> ]<br> },<br><br><br> <span class="hljs-attr">"launch"</span>:{...},<br> <span class="hljs-attr">"actions"</span>:[]<br>}<br></code></pre></td></tr></table></figure>
<figure class="highlight js"><figcaption><span>number-parser.js</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><code class="hljs js"><span class="hljs-built_in">module</span>.exports = <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">NumberParser</span>(<span class="hljs-params">action</span>) </span>{<br> <span class="hljs-keyword">if</span> (<span class="hljs-keyword">typeof</span> action === <span class="hljs-string">"number"</span>) {<br> <span class="hljs-keyword">if</span> (actions === <span class="hljs-number">1</span>) {<br> <span class="hljs-keyword">return</span> {<br> <span class="hljs-attr">use</span>: <span class="hljs-string">"goto-plugin"</span>,<br> <span class="hljs-attr">href</span>: <span class="hljs-string">"https://example.com"</span>,<br> };<br> }<br> }<br>};<br></code></pre></td></tr></table></figure>
<figure class="highlight js"><figcaption><span>goto-plugin.js</span></figcaption><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><code class="hljs js"><span class="hljs-built_in">module</span>.exports = <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">GotoPlugin</span>(<span class="hljs-params">options</span>) </span>{<br> <span class="hljs-keyword">return</span> [[<span class="hljs-string">"goto"</span>, options.action.href]];<br>};<br></code></pre></td></tr></table></figure>
<hr>
<p>如果有以下动作列表</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><code class="hljs json">{<br> <span class="hljs-attr">"actions"</span>: [<span class="hljs-number">1</span>, <span class="hljs-number">1</span>]<br>}<br></code></pre></td></tr></table></figure>
<p>使用自定义的 number-parser 和 goto-plugin 将会解析成</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br></pre></td><td class="code"><pre><code class="hljs json">{<br> <span class="hljs-attr">"actions"</span>: [<br> {<br> <span class="hljs-attr">"use"</span>: <span class="hljs-string">"goto-plugin"</span>,<br> <span class="hljs-attr">"href"</span>: <span class="hljs-string">"https://example.com"</span>,<br> <span class="hljs-attr">"actions"</span>: [[<span class="hljs-string">"goto"</span>, <span class="hljs-string">"https://example.com"</span>]]<br> },<br> {<br> <span class="hljs-attr">"use"</span>: <span class="hljs-string">"goto-plugin"</span>,<br> <span class="hljs-attr">"href"</span>: <span class="hljs-string">"https://example.com"</span>,<br> <span class="hljs-attr">"actions"</span>: [[<span class="hljs-string">"goto"</span>, <span class="hljs-string">"https://example.com"</span>]]<br> }<br> ]<br>}<br></code></pre></td></tr></table></figure>
<p>流程是这样的</p>
<p>1.jpptr 调用 number-parser</p>
<p><code>1</code> 变成 <code>{use: "goto-plugin",href: "https://example.com"}</code></p>
<p>2.jpptr 调用 goto-plugin</p>
<p><code>{use: "goto-plugin",href: "https://example.com"}</code><br>
变成</p>
<figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><code class="hljs json">{<br> <span class="hljs-attr">"use"</span>: <span class="hljs-string">"goto-plugin"</span>,<br> <span class="hljs-attr">"href"</span>: <span class="hljs-string">"https://example.com"</span>,<br> <span class="hljs-attr">"actions"</span>: [[<span class="hljs-string">"goto"</span>, <span class="hljs-string">"https://example.com"</span>]]<br>}<br></code></pre></td></tr></table></figure>
<hr>
<p>原理就是,如果 插件 仅仅返回一个 动作列表 ,则 jpptr 会自动添加 <code>{"actions":[...]}</code> 的属性, 并且 jpptr 会执行 actions 里面的动作</p>
<hr>
<p>更多详情请看 <a href="/jpptr-docs/plugin/">插件</a></p>
</div></article></div><div class="card"><article class="card-content article" role="article"><div class="article-meta is-size-7 is-uppercase level is-mobile"><div class="level-left"><span class="level-item"><time dateTime="2022-01-23T16:00:00.000Z" title="2022/1/24 上午12:00:00">2022-01-24</time>发表</span><span class="level-item"><time dateTime="2022-01-24T15:22:57.032Z" title="2022/1/24 下午11:22:57">2022-01-24</time>更新</span><span class="level-item"><a class="link-muted" href="/categories/jpptr/">jpptr</a></span><span class="level-item">几秒读完 (大约0个字)</span></div></div><h1 class="title is-3 is-size-4-mobile"><a class="link-muted" href="/jpptr-docs/parser/">Jpptr - 解析器(Parser)</a></h1><div class="content"></div></article></div><div class="card"><article class="card-content article" role="article"><div class="article-meta is-size-7 is-uppercase level is-mobile"><div class="level-left"><span class="level-item"><time dateTime="2022-01-23T16:00:00.000Z" title="2022/1/24 上午12:00:00">2022-01-24</time>发表</span><span class="level-item"><time dateTime="2022-01-24T15:22:57.032Z" title="2022/1/24 下午11:22:57">2022-01-24</time>更新</span><span class="level-item"><a class="link-muted" href="/categories/jpptr/">jpptr</a></span><span class="level-item">几秒读完 (大约0个字)</span></div></div><h1 class="title is-3 is-size-4-mobile"><a class="link-muted" href="/jpptr-docs/plugin/">Jpptr - 动作(Plugin)</a></h1><div class="content"></div></article></div><div class="card"><article class="card-content article" role="article"><div class="article-meta is-size-7 is-uppercase level is-mobile"><div class="level-left"><span class="level-item"><time dateTime="2022-01-23T16:00:00.000Z" title="2022/1/24 上午12:00:00">2022-01-24</time>发表</span><span class="level-item"><time dateTime="2022-01-24T15:24:10.440Z" title="2022/1/24 下午11:24:10">2022-01-24</time>更新</span><span class="level-item"><a class="link-muted" href="/categories/jpptr/">jpptr</a></span><span class="level-item">5 分钟读完 (大约783个字)</span></div></div><h1 class="title is-3 is-size-4-mobile"><a class="link-muted" href="/jpptr-docs/">Jpptr文档</a></h1><div class="content"><blockquote>
<p>一个使用 json 语法糖去执行 puppeteer 的框架。<br>
你可以使用 json 去执行 puppeteer , 就像使用 javascript 去执行 puppeteer 一样</p>
</blockquote></div><a class="article-more button is-small is-size-7" href="/jpptr-docs/#more">阅读更多</a></article></div></div><!--!--><div class="column column-right is-4-tablet is-4-desktop is-4-widescreen order-3"><div class="card widget" data-type="profile"><div class="card-content"><nav class="level"><div class="level-item has-text-centered flex-shrink-1"><div><figure class="image is-128x128 mx-auto mb-2"><img class="avatar is-rounded" src="/img/avatar.png" alt="言小溪"></figure><p class="title is-size-4 is-block" style="line-height:inherit;">言小溪</p><p class="is-size-6 is-block">言小溪(enncy)</p><p class="is-size-6 is-flex justify-content-center"><i class="fas fa-map-marker-alt mr-1"></i><span>中国</span></p></div></div></nav><nav class="level is-mobile"><div class="level-item has-text-centered is-marginless"><div><p class="heading">文章</p><a href="/archives"><p class="title">6</p></a></div></div><div class="level-item has-text-centered is-marginless"><div><p class="heading">分类</p><a href="/categories"><p class="title">2</p></a></div></div><div class="level-item has-text-centered is-marginless"><div><p class="heading">标签</p><a href="/tags"><p class="title">3</p></a></div></div></nav><div class="level"><a class="level-item button is-primary is-rounded" href="https://github.com/enncy" target="_blank" rel="noopener">关注我</a></div><div class="level is-mobile is-multiline"><a class="level-item button is-transparent is-marginless" target="_blank" rel="noopener" title="Github" href="https://github.com/enncy"><i class="fab fa-github"></i></a><a class="level-item button is-transparent is-marginless" target="_blank" rel="noopener" title="ZHIHU" href="https://www.zhihu.com/people/yxx-enncy"><i class="fab fa-zhihu"></i></a><a class="level-item button is-transparent is-marginless" target="_blank" rel="noopener" title="RSS" href="/atom.xml"><i class="fas fa-rss"></i></a></div></div></div><div class="card widget" data-type="recent-posts"><div class="card-content"><h3 class="menu-label">最新文章</h3><article class="media"><div class="media-content"><p class="date"><time dateTime="2022-01-24T10:20:47.000Z">2022-01-24</time></p><p class="title"><a href="/2022/01/24/%E7%BD%91%E8%AF%BE/%E7%BD%91%E8%AF%BE%E6%95%99%E7%A8%8B(1)%20%20%E5%89%8D%E8%A8%80/">网课教程(1) 前言</a></p><p class="categories"><a href="/categories/%E7%BD%91%E8%AF%BE/">网课</a></p></div></article><article class="media"><div class="media-content"><p class="date"><time dateTime="2022-01-23T16:00:00.000Z">2022-01-24</time></p><p class="title"><a href="/jpptr-docs/action/">Jpptr - 动作(Action)</a></p><p class="categories"><a href="/categories/jpptr/">jpptr</a></p></div></article><article class="media"><div class="media-content"><p class="date"><time dateTime="2022-01-23T16:00:00.000Z">2022-01-24</time></p><p class="title"><a href="/jpptr-docs/parser/">Jpptr - 解析器(Parser)</a></p><p class="categories"><a href="/categories/jpptr/">jpptr</a></p></div></article><article class="media"><div class="media-content"><p class="date"><time dateTime="2022-01-23T16:00:00.000Z">2022-01-24</time></p><p class="title"><a href="/jpptr-docs/plugin/">Jpptr - 动作(Plugin)</a></p><p class="categories"><a href="/categories/jpptr/">jpptr</a></p></div></article><article class="media"><div class="media-content"><p class="date"><time dateTime="2022-01-23T16:00:00.000Z">2022-01-24</time></p><p class="title"><a href="/jpptr-docs/">Jpptr文档</a></p><p class="categories"><a href="/categories/jpptr/">jpptr</a></p></div></article></div></div><div class="card widget" data-type="categories"><div class="card-content"><div class="menu"><h3 class="menu-label">分类</h3><ul class="menu-list"><li><a class="level is-mobile" href="/categories/jpptr/"><span class="level-start"><span class="level-item">jpptr</span></span><span class="level-end"><span class="level-item tag">4</span></span></a></li><li><a class="level is-mobile" href="/categories/%E7%BD%91%E8%AF%BE/"><span class="level-start"><span class="level-item">网课</span></span><span class="level-end"><span class="level-item tag">1</span></span></a></li></ul></div></div></div><div class="card widget" data-type="archives"><div class="card-content"><div class="menu"><h3 class="menu-label">归档</h3><ul class="menu-list"><li><a class="level is-mobile" href="/archives/2022/01/"><span class="level-start"><span class="level-item">一月 2022</span></span><span class="level-end"><span class="level-item tag">6</span></span></a></li></ul></div></div></div><div class="card widget" data-type="tags"><div class="card-content"><div class="menu"><h3 class="menu-label">标签</h3><div class="field is-grouped is-grouped-multiline"><div class="control"><a class="tags has-addons" href="/tags/jpptr-%E6%96%87%E6%A1%A3/"><span class="tag">jpptr 文档</span><span class="tag">4</span></a></div><div class="control"><a class="tags has-addons" href="/tags/%E7%BD%91%E8%AF%BE%E8%84%9A%E6%9C%AC/"><span class="tag">网课脚本</span><span class="tag">1</span></a></div><div class="control"><a class="tags has-addons" href="/tags/%E8%84%9A%E6%9C%AC/"><span class="tag">脚本</span><span class="tag">1</span></a></div></div></div></div></div></div></div></div></section><footer class="footer"><div class="container"><div class="level"><div class="level-start"><a class="footer-logo is-block mb-2" href="/">言小溪的博客</a><p class="is-size-7"><span>© 2022 言小溪</span> Powered by <a href="https://hexo.io/" target="_blank" rel="noopener">Hexo</a> & <a href="https://github.com/ppoffice/hexo-theme-icarus" target="_blank" rel="noopener">Icarus</a><br><p class="is-size-7"><a href="https://beian.miit.gov.cn"> 网站备案 : 桂ICP备2020008008号-2</a></p><span id="busuanzi_container_site_uv">共<span id="busuanzi_value_site_uv">0</span>个访客</span></p></div><div class="level-end"><div class="field has-addons"><p class="control"><a class="button is-transparent is-large" target="_blank" rel="noopener" title="知识共享协议" href="https://creativecommons.org/"><i class="fab fa-creative-commons"></i></a></p><p class="control"><a class="button is-transparent is-large" target="_blank" rel="noopener" title="Attribution 4.0 International" href="https://creativecommons.org/licenses/by/4.0/"><i class="fab fa-creative-commons-by"></i></a></p><p class="control"><a class="button is-transparent is-large" target="_blank" rel="noopener" title="github项目地址" href="https://github.com/enncy/enncy.github.io"><i class="fab fa-github"></i></a></p><p class="control"><a class="button is-transparent " target="_blank" rel="noopener" title="关于" href="/about">关于</a></p></div></div></div></div></footer><script src="https://cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js"></script><script src="https://cdn.jsdelivr.net/npm/moment@2.22.2/min/moment-with-locales.min.js"></script><script src="https://cdn.jsdelivr.net/npm/clipboard@2.0.4/dist/clipboard.min.js" defer></script><script>moment.locale("zh-CN");</script><script>var IcarusThemeSettings = {
article: {
highlight: {
clipboard: true,
fold: 'unfolded'
},
markdown:{
showLang: true
}
}
};</script><script src="/js/column.js"></script><script src="/js/animation.js"></script><a id="back-to-top" title="回到顶端" href="javascript:;"><i class="fas fa-chevron-up"></i></a><script src="/js/back_to_top.js" defer></script><!--!--><!--!--><script src="https://cdn.jsdelivr.net/npm/cookieconsent@3.1.1/build/cookieconsent.min.js" defer></script><script>window.addEventListener("load", () => {
window.cookieconsent.initialise({
type: "info",
theme: "edgeless",
static: false,
position: "bottom-left",
content: {
message: "此网站使用Cookie来改善您的体验。",
dismiss: "知道了!",
allow: "允许使用Cookie",
deny: "拒绝",
link: "了解更多",
policy: "Cookie政策",
href: "https://www.cookiesandyou.com/",
},
palette: {
popup: {
background: "#edeff5",
text: "#838391"
},
button: {
background: "#4b81e8"
},
},
});
});</script><!--!--><!--!--><script src="/js/main.js" defer></script><div class="searchbox"><div class="searchbox-container"><div class="searchbox-header"><div class="searchbox-input-container"><input class="searchbox-input" type="text" placeholder="想要查找什么..."></div><a class="searchbox-close" href="javascript:;">×</a></div><div class="searchbox-body"></div></div></div><script src="/js/insight.js" defer></script><script>document.addEventListener('DOMContentLoaded', function () {
loadInsight({"contentUrl":"/content.json"}, {"hint":"想要查找什么...","untitled":"(无标题)","posts":"文章","pages":"页面","categories":"分类","tags":"标签"});
});</script></body></html>