基于百度统计 API 实现站点访问量自动通知(Python 版)
前言
官方案例代码
本文的代码参考了官方 PHP 版的 Demo,兼容 Python2,不兼容 Python3。
创建 RSA 公钥
新建 RSA 公钥文件 api_pub.key,然后将以下内容拷贝并保存到该文件中。
1 | -----BEGIN PUBLIC KEY----- |

官方案例代码
本文的代码参考了官方 PHP 版的 Demo,兼容 Python2,不兼容 Python3。
新建 RSA 公钥文件 api_pub.key,然后将以下内容拷贝并保存到该文件中。
1 | -----BEGIN PUBLIC KEY----- |
网上各种 Hexo 站内静态搜索(全文搜索)方案,原理基本都是通过 Hexo 插件动态生成 JSON 数据文件,然后基于 JSON 数据文件,使用 JS 开发简单的搜索引擎,以此达到搜索目的。目前主流的方案是使用 NexT 主题集成的 hexo-generator-searchdb 插件,可惜该方案的 UI 代码和 JS 代码都严重耦合了 NexT 主题,对其他 Hexo 主题并不友好。由于笔者的博客使用的是 Yilia 主题,因此只能尝试其他替代方案,最终发现 Tipue Search 配合 hexo-tipue-search-db 实现的搜索效果挺不错。Tipue Search 是一款 JQuery 搜索插件,提供了基础的 UI 界面 和 JS 搜索引擎,只要浏览器支持 JQuery 就可以开箱即用,而且 UI 样式支持高度定制,非常适合对搜索界面有强自定义需求的使用场景。这里值得注意的是,上面介绍的站内静态搜索方案都存在共同的致命弱点,那就是当文章数量比较多的时候,Hexo 插件动态生成的数据文件的体积会很大(单位:MB),导致用户首次加载搜索界面时非常慢;而且由于浏览器缓存的缘故,不一定能够实时搜索到最新的文章内容。此时若想从根本上解决上述痛点,只能引入后端的搜索引擎技术,例如 Elasticsearch、Solr、Lucene 等,可这又违背了 Hexo 打造静态博客的初衷。附上本站 Tipue Search 的演示案例。
hexo-tipue-search-db 插件主要用来生成搜索引擎需要的 JS 数据文件(tipuesearch_content.js),默认存放的文件路径为: ${blog_root}/public/tipuesearch/tipuesearch_content.js,该插件兼容 Tipue Search 7.1 +。
1 | # 进入博客的根目录 |
笔者曾在文章”CentOS 7 安装常用桌面软件 “中,推荐使用 electronic-wechat 作为 Linux 微信客户端,可惜在 CentOS 7 环境下的长期使用体验比较一般,例如接收到消息时无声音提示,且微信的托盘图标不会闪烁,同时由于 electronic-wechat 是在 Web 版微信的基础上开发的,这就导致新注册的微信账号登录受限,最终无法使用。经过一番尝试,发现 CrossOver 可以近乎完美地安装微信,而且运行的是微信官方原生的二进制执行文件。本教程适用于 Debian/Ubuntu/CentOS 系的 Linux 发行版,文章末尾附有微信运行的最终效果图。
CrossOver 安装微信的过程中可能遇到了以下问题,本文后面会详细一一给出对应的解决方法:
WeChatWin.dll 文件缺失前言
本教程主要介绍如何通过 Docker 安装和使用 TesterSunshine/12306 抢票软件,并配合使用本地的打码服务。
TesterSunshine/12306 抢票软件的功能
前言
本文主要介绍 Py12306 抢票软件的手动安装和 Docker 安装过程,适用于 Centos/Debian/Ubuntu,目前主流开源的 12306 抢票软件有:testerSunshine/12306、pjialin/py12306。
Py12306 抢票功能介绍
Atom 解决在线安装或更新插件慢的问题
1 | # 方法一(配置代理,推荐使用) |
在加速百度搜索引擎收录站点方面,百度站长目前提供自动提交链接和手动提交链接两种方式,其中自动提交又分为主动推送、自动推送和 sitemap 三种形式。按百度的说法,主动推送的效果最好,百度站长平台后台提供了 Curl、PHP、Ruby 的推送示例代码,但唯独没有提供 Python 示例代码。本文会给出现成的 Python 版本主动推送代码,系统环境依赖 Linux,软件环境依赖 Python3、Curl。
以下代码会读取特定域名下的 sitemap 站点地图文件,然后通过 Curl 命令将站点地图文件中合法 (结尾为 .html)的 URL 批量提交给百度站长平台,请自行替换代码中的 domain、token、site_map_url 变量值。
前言
CentOS 7 将在 2024 年 6 月 30 日停止支持。
发布时间
CentOS 8 在 2019.9.25 正式发布,提供了两个版本,分别是 CentOS 和 CentOS Streams,Linux 内核版本为 4.18。其中 CentOS Stream 是一个滚动发布的 Linux 发行版,它介于 Fedora Linux 的上游开发和 RHEL 的下游开发之间而存在。可以把 CentOS Streams 当成是用来体验最新红帽系 Linux 特性的一个版本,而无需等太久。CentOS 8 不支持 在 CentOS 7 的基础上进行大版本升级,因此 CentOS 8 只支持全新安装。截止 2020 年 12 月 9 日,CentOS 官方团队正式宣布 2021 年后将停止更新 CentOS 8,转而将更多的精力放在 CentOS Stream 上,也就是说以后不会再有 CentOS 9、CentOS 10,但 CentOS 7 的长期技术支持时间将不会改变,依旧会延续到 2024 年。
软件仓库
引入了两个新的软件仓库,分别是 BaseOS 和 AppStream,其中 BaseOS 包含所有底层 OS 包,AppStream 包含与应用程序相关的包、开发工具、数据库和其他包。换句话说,BaseOS 仓库拥有组成操作系统核心的传统 RPM 包。一旦你更新了系统,它会自动下载并安装这些包的任何新版本。然而有时候你可能不想批量升级软件,因为它可能会在你希望保持稳定的环境中导致兼容性问题(例如在测试代码时)。AppStream 是对传统 rpm 格式的全新扩展,为一个组件同时提供多个主要版本,这就是为什么新的 CentOS 8 新增了 AppStream 仓库。
软件更新
使用 YUM 包管理器 4.0.4 版本,该版本现在使用 DNF (Dandified YUM) 技术作为后端。DNF 是新一代的 YUM,且 CentOS 8 允许同时使用这 dnf 和 yum 两种工具来管理包。与 DNF 技术集成后,提高了性能,具有定义良好的 API,并支持模块化内容、云应用程序流、容器工作负载和 CI/CD。