首页
留言
统计
友链
Search
1
欢迎使用 Typecho
61 阅读
2
Next主题增加 Waline评论系统
43 阅读
3
白嫖cloudflare实现网址短链接
40 阅读
4
把github贡献日历部署到博客上(一)
40 阅读
5
Python日记 -- 百度OCR翻译
38 阅读
默认分类
登录
Search
标签搜索
分享
实用小技巧
白嫖
白嫖小技巧
python
学习日记
Reverse
累计撰写
8
篇文章
累计收到
3
条评论
首页
栏目
默认分类
页面
留言
统计
友链
搜索到
7
篇与
的结果
2022-12-25
Next主题增加 Waline评论系统
前言原教程源自 谢同学 为 Next 主题添加 Waline 评论系统 教程演示版本为 Next 8.12.2注:经测试 5.1.4 , 7.8.0 版本装完插件后都会报错。 测试当前最新版 8.12.2 是可用, 从 8.0.0 ~ 8.12.2 之间版本请自行测试。教程配置 LeanClou 国际版登录 / 注册 LeanClou 国际版点击 创建应用 ,自定义名称 , 选择 开发版找到 设置 ,点击 安全中心 , 把 数据储存 打开,其余全关闭找到 云引擎 , 点击 WEB , 后再点击 部署点击 部署项目 ,后点击 Git 部署 , 再点击 配置 Git ,把 https://github.com/W4J1e/Hexo-Valine-ASPush 输入, 保存 https://github.com/W4J1e/Hexo-Valine-ASPush点击 部署项目 , 后 下拉 点击 部署 ,等待部署完成找到 定时任务 ,点击 创建定时任务 ,配置 以下内容 共两个 , 保存 名称: 唤醒服务器 函数: self_wake 表达式: 0 0/30 7-23 * * ? 名称: 复查 函数: resend_mails 表达式: 0 0 8 * * ?注:如遇到不显示函数,刷新页面即可;还不显示就回到主页,再进配置页面找到 设置 ,点击 添加 , 配置 以下内容 , 保存 (该部分配置为游客评论邮箱提醒功能)SENDER_NAME 博主名 SITE_NAME 博客名 SITE_URL 博客网址 SMTP_PASS 授权码 SMTP_SERVICE 邮箱 SMTP_USER 博主邮箱 TEMPLATE_NAME rainbow变量名变量值SENDER_NAME博主用户名SITE_NAME博客名SITE_URL博客网址SMTP_PASS授权码SMTP_SERVICE邮箱SMTP_USER博主邮箱TEMPLATE_NAMErainbow我的配置 ⭣变量名变量值SENDER_NAMEReverseSITE_NAMEReverse -s blogSITE_URLhttps://next.c12th.cnSMTP_PASSsjlzxxxxxxxxxxxxSMTP_SERVICEqqSMTP_USER1308168694@qq.comTEMPLATE_NAMErainbow回到 部署 页面,点击 部署 配置即可生效回到 设置 页面,点击 应用凭证 , 记录好 AppID , AppKey 和 MasterKey 的值配置 Vercel原教程源自 官方文档登录 / 注册 Vercel 账号点击 + New Project选择 Import Third-Party Git Repository →输入 https://github.com/walinejs/waline/tree/main/example ,点击 Continue ,自定义名称 , 点击 Create ,等待部署 https://github.com/walinejs/waline/tree/main/example部署完成后,找到 Settings ,点击 Environment Variables ,把在 LeanClou 国际版 获得的 AppID , AppKey 和 MasterKey 的值 对应添加填入LEAN_ID AppID的值 LEAN_KEY AppKey的值 LEAN_MASTER_KEY MasterKey的值NAMEVALUELEAN_IDAppID的值LEAN_KEYAppKey的值LEAN_MASTER_KEYMasterKey的值找到 Deployments ,点击 ⋮ ,后点击 REDEPLOY , 重新部署即可重新部署后,域名 + /ui 进入配置页面 ,自行配置 域名+/uiNext主题配置安装 插件 npm install @waline/hexo-next在 主题 _config.yml 配置文件,最后一行 增加以下内容# Waline # For more information: https://waline.js.org, https://github.com/walinejs/waline waline: enable: true #是否开启 serverURL: waline-server-pearl.vercel.app # Waline #服务端地址,我们这里就是上面部署的 Vercel 地址 placeholder: 请文明评论呀 # #评论框的默认文字 avatar: mm # 头像风格 meta: [nick, mail, link] # 自定义评论框上面的三个输入框的内容 pageSize: 10 # 评论数量多少时显示分页 lang: zh-cn # 语言, 可选值: en, zh-cn # Warning: 不要同时启用 `waline.visitor` 以及 `leancloud_visitors`. visitor: false # 文章阅读统计 comment_count: true # 如果为 false , 评论数量只会在当前评论页面显示, 主页则不显示 requiredFields: [] # 设置用户评论时必填的信息,[nick,mail]: [nick] | [nick, mail] libUrl: # Set custom library cdn url 三连 即可 hexo clean && hexo g && hexo s
2022年12月25日
43 阅读
0 评论
0 点赞
2022-12-25
解决Butterfly主题图标不显示问题
前言解决Butterfly主题图标不显示问题五天前 jsdelivr 突然不能用了,导致一些借助cdn加速的资源也用不了了,现在 jsdelivr 也是属于不稳定的状态。 这几天感觉 jsdelivr 变稳定了? 我尝试过换cdn,但除了图标外其他都能正常使用,唯独图标不能正常显示。 这里分享下解决方法。主题作者在 4.3.0 版本发布了可以换源的方法! 这里分享从 4.2.0 以下 && 4.2.0 及以上 版本的解决方法解决方法主题 4.3.0 及以上作者在 4.3.0 版本发布了 CDN 可一鍵配置 cdnjs 或 unpkg 这一设定,也就是说我们除了可以调回本地外, 还能直接换源 ,换源会比本地调用要快很多。CDN: # The CDN provider of internal scripts (主題內部 js 的 cdn 配置) # option: local/jsdelivr/unpkg/cdnjs/custom # Dev version can only choose. ( dev版的主題只能設置為 local ) internal_provider: local # The CDN provider of third party scripts (第三方 js 的 cdn 配置) # option: local/jsdelivr/unpkg/cdnjs/custom # when set it to local, you need to install hexo-butterfly-extjs third_party_provider: jsdelivr这里还是推荐用 unpkg 的加速源主题 4.2.0 及以上主题作者在 4.2.0 版本发布了 cdn 可一鍵設置 本地文件/可單獨配置主題文件,第三方文件的 cdn 这一设定,也就是说我们在 cdn 无法使用 的情况下可以调回本地。方法之一下载 插件npm install hexo-butterfly-extjs修改 [Blogroot]\themes\butterfly\ _config.yml 配置文件 即可- third_party_provider: jsdelivr + third_party_provider: local主题 4.2.0 以下由于 4.2.0 以下 版本无法调回本地,这里使用 cdnjs 。(由于 cdnjs.cloudflare.com 被影响了,需要用加速,所以直接参考 方法二 )方法一 (不推荐)查找当前主题使用 fontawesome 的版本号,在 cdnjs 里 搜索如:我当前主题 3.7.0 ,用的是 fontawesome 6.1.1 的版本,替换链接 即可 (如不清楚当前主题使用哪个版本,需下载 fontawesome 原文件查看,请自行挖掘如何下载)- fontawesome: https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css+ fontawesome: https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css由于 cdnjs.cloudflare.com 被影响了,需要用加速才能使用 , 加速方法参考下面链接 , 能访问 Github 就能使用,非魔法如何优雅的加速Github方法二 (推荐)从原链接可以看出,除了用 jsdelivr 的加速源,还能使用 unpkg 的加速源在 fontawesome 的 npm仓库 里 查找对应版本三选一 (当前主题 3.7.0 ,用的是 fontawesome 6.1.1 的版本) fontawesome: https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css # jsdelivr fontawesome: https://unpkg.com/@fortawesome/fontawesome-free@6.1.1/css/all.min.css # unpkg fontawesome: https://npm.elemecdn.com/@fortawesome/fontawesome-free@6.1.1/css/all.min.css # 部分会屏蔽补充其实还可以 自行搭建cdn ,另外还有别的方法没有使用过,可自行尝试挖掘。
2022年12月25日
36 阅读
0 评论
0 点赞
2022-12-25
把github贡献日历部署到博客上(一)
前言此教程仅在 Butterfly 主题演示该教程与原教程 大同小异 。原教程源自 小冰 大佬。效果展示教程公共 api插件的原理和部署的教程 小冰 大佬 在 原文 已经说得很详细了,这里直接演示 简化版 。下载 插件 npm i hexo-githubcalendar --save在 博客 根目录 _config.yml 配置文件,增加以下内容# Ice Kano Plus_in # Hexo Github Canlendar # Author: Ice Kano # Modify: Lete乐特 githubcalendar: enable: true enable_page: / user: zfour layout: type: id name: recent-posts index: 0 githubcalendar_html: '<div class="recent-post-item" style="width:100%;height:auto;padding:10px;"><div id="github_loading" style="width:10%;height:100%;margin:0 auto;display: block"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 50 50" style="enable-background:new 0 0 50 50" xml:space="preserve"><path fill="#d0d0d0" d="M25.251,6.461c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615V6.461z" transform="rotate(275.098 25 25)"><animateTransform attributeType="xml" attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.6s" repeatCount="indefinite"></animateTransform></path></svg></div><div id="github_container"></div></div>' pc_minheight: 280px mobile_minheight: 0px color: "['#ebedf0', '#fdcdec', '#fc9bd9', '#fa6ac5', '#f838b2', '#f5089f', '#c4067e', '#92055e', '#540336', '#48022f', '#30021f']" api: https://python-github-calendar-api.vercel.app/api # api: https://python-gitee-calendar-api.vercel.app/api calendar_js: https://npm.elemecdn.com/reverse-stu-allversions@1.0.1/butterfly/diy/hexo_githubcalendar.js plus_style: ""修改配置改为自己的 github / gitee 的用户名 user: zfour默认 github ,如用 gitee 换成下面的api: https://python-github-calendar-api.vercel.app/api # github # api: https://python-gitee-calendar-api.vercel.app/api # gitee 由于cdn的原因我换了个cdn 哪个速度快用哪个calendar_js: https://npm.elemecdn.com/reverse-stu-allversions@1.0.1/butterfly/diy/hexo_githubcalendar.js # calendar_js: https://unpkg.com/reverse-stu-allversions@1.0.1/butterfly/diy/hexo_githubcalendar.js 颜色 配置源自 店长 大佬color: "['#ebedf0', '#fdcdec', '#fc9bd9', '#fa6ac5', '#f838b2', '#f5089f', '#c4067e', '#92055e', '#540336', '#48022f', '#30021f']" #浅紫色调 # color: "['#e4dfd7', '#f9f4dc', '#f7e8aa', '#f7e8aa', '#f8df72', '#fcd217', '#fcc515', '#f28e16', '#fb8b05', '#d85916', '#f43e06']" #橘黄色调 # color: "['#ebedf0', '#f0fff4', '#dcffe4', '#bef5cb', '#85e89d', '#34d058', '#28a745', '#22863a', '#176f2c', '#165c26', '#144620']" #翠绿色调 # color: "['#ebedf0', '#f1f8ff', '#dbedff', '#c8e1ff', '#79b8ff', '#2188ff', '#0366d6', '#005cc5', '#044289', '#032f62', '#05264c']" #天青色调保存配置后,三连hexo clean && hexo g && hexo s自搭 api除了用提供的 公共api 外,还可以 自搭api 。小冰 大佬 在 github 仓库 也发布了详细的教程,这里也是 简化版 。注册一个 Vercel 账号点击 + New Project选择 Import Third-Party Git Repository →填入 https://github.com/Zfour/python_github_calendar_api ,点击 Continue https://github.com/Zfour/python_github_calendar_api选择 储存库 ,这里我以 Github 为例,选择 Github默认 勾选 Create private Git Repository ,点击 Create ,部署需等待几分钟部署完毕后在 DOMAINS 会出现提供的域名,访问域名:访问格式 域名/api/?用户名 域名/api/?用户名有数据反馈 ,则表示搭建成功把 公共 api 改为 自搭 api 即可, 注意格式- api: https://python-github-calendar-api.vercel.app/api + api: 域名/api如搭建的是 gitee ,则把填入 链接 换成 https://github.com/Zfour/python_gitee_calendar_api ,其余步骤同上 。 https://github.com/Zfour/python_gitee_calendar_api保存配置后,三连 hexo clean && hexo g && hexo s补充第二篇 把github贡献日历部署到博客上(二)自搭 api 的 域名 是可以 自定义的,需绑定好 vercel 提供的 cn如果无法访问github可以看下这个 如何优雅的加速Github
2022年12月25日
40 阅读
0 评论
0 点赞
2022-12-25
Python日记 -- 百度OCR翻译
前言最近写了个 丐版 的 百度 OCR 翻译 ,其实网络上也有很多类似的源码。该教程为 简化版 ,详细查看 技术文档 , 支持 python 版本 2.7.+ 和 3.+ 。 效果展示百度OCR准备工作登录 / 注册 百度账号创建 通用场景OCR ,应用归属 选择 个人 ,应用名称 和 应用描述 自定义填完以上信息后,点击 立即创建 (注意要实名认证)此时,应用列表 会出现 刚创建好的应用 ,分别把 AppID 、 API Key 和 Secret Key 记录好 等下用核心代码当前版本为 python 3.8.1 (PIL 在 python3 时,第三方库应安装 pillow) # 截图 import keyboard import time from PIL import ImageGrab keyboard.wait(hotkey='ctrl+c') # 触发按键 time.sleep(0.01) # 延迟 # 保存图片 image = ImageGrab.grabclipboard() image.save('OCR.png') # 图片命名为'OCR.png'安装 OCR Python SDK pip install baidu-aip配置 OCR配置AipOcr ,把在 准备工作 获取的 AppID 、 API Key 和 Secret Key 对应填入 # 配置AipOcr from aip import AipOcr APP_ID = '你的 App ID' API_KEY = '你的 Api Key' SECRET_KEY = '你的 Secret Key' client = AipOcr(APP_ID, API_KEY, SECRET_KEY)接口说明def get_file_content(filePath): with open('OCR.png', "rb") as fp: return fp.read() image = get_file_content('OCR.png') # 调用通用文字识别(标准版) res_image = client.basicGeneral(image) print(res_image)删减 + 筛选数据 with open('OCR.png', "rb") as fp: image = fp.read() # 调用通用文字识别(标准版) res_image = client.basicGeneral(image) # print(res_image) # 筛选数据 res = res_image['words_result'] for i in res: print(i['words'])有道翻译用到了 爬虫 , 网上有教程,不细说import requests import json import time import random import hashlib # 网址 url = 'https://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule' # 反爬 header = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36', 'Cookie': 'OUTFOX_SEARCH_USER_ID=1870252624@10.110.96.157; OUTFOX_SEARCH_USER_ID_NCOO=1338974472.751384; ___rl__test__cookies=1654489795853', 'Referer': 'https://fanyi.youdao.com/' } # 时间戳 r = str(int(time.time()*1000)) # print(r) # 随机数 random_num = random.randint(0,9) i = r + str(random_num) # print(i) def data_new(e): # md5 str_sign = "fanyideskweb" + e + i + "Ygy_4c=r#e#4EX^NUGUc5" md5 = hashlib.md5() md5.update(str_sign.encode()) sign = md5.hexdigest() # print(sign) data_old = { 'i': e, 'from': 'AUTO', 'to': 'AUTO', 'smartresult': 'dict', 'client': 'fanyideskweb', 'salt': i, 'sign': sign, 'lts': r, 'bv': 'dbf26599b4389c828cae8b896c9b0708', 'doctype': 'json', 'version': '2.1', 'keyfrom': 'fanyi.web', 'action': 'FY_BY_REALTlME' } return data_old a = input('请输入需要翻译的内容:\n') data = data_new(a) # 请求 result = requests.post(url,headers=header,data=data).text # print(result) # 数据筛选 dict_res = json.loads(result) print(dict_res['translateResult'][0][0]['tgt'])补充拓展增加 复制 和 弹窗 功能 加了些花里胡哨的东西 import pyperclip import tkinter as tk # copy pyperclip.copy(a + '\n' + b) time.sleep(0.02) # 弹窗 root = tk.Tk() root.title("info") tk.Label(root, text="已复制", ).pack() # 弹窗显示 root.after(1000, lambda: root.destroy()) # 停留1s root.mainloop()打包前 完整代码演示版本为 python 3.8.1 , 如出现报错请自行解决# 工程:test # 创建时间:2022/6/2 11:41 # encoding:utf-8 import keyboard import time import requests import random import hashlib import json import configparser import pyperclip import tkinter as tk from PIL import ImageGrab from aip import AipOcr # 读取ini文件 aip = 'OCR.ini' conf = configparser.ConfigParser() conf.read(aip) # 配置AipOcr APP_ID = conf.get('aip', 'APP_ID') # 你的 App ID API_KEY = conf.get('aip', 'API_KEY') # 你的 Api Key SECRET_KEY = conf.get('aip', 'SECRET_KEY') # 你的 Secret Key client = AipOcr(APP_ID, API_KEY, SECRET_KEY) while True: # --------------- 截图识别 -------------- # 截图 keyboard.wait(hotkey='ctrl+c') # 触发按键 time.sleep(0.01) # 延迟 # 保存图片 image = ImageGrab.grabclipboard() image.save('OCR.png') # 图片命名为'OCR.png' print('识别中...') with open('OCR.png', "rb") as fp: image = fp.read() # 调用通用文字识别(标准版) res_image = client.basicGeneral(image) # print(res_image) # 筛选数据 all_text = '' res = res_image['words_result'] for i in res: all_text += i['words'] + '\n' a = all_text print(a + '-' * 70) # --------------- 有道翻译 -------------- # 网址 url = 'https://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule' # 反爬 header = { 'User-Agent': conf.get('config', 'User-Agent'), 'Cookie': conf.get('config', 'Cookie'), 'Referer': 'https://fanyi.youdao.com/' } # 时间戳 r = str(int(time.time() * 1000)) # print(r) # 随机数 random_num = random.randint(0, 9) i = r + str(random_num) # print(i) def data_new(e): # md5 str_sign = "fanyideskweb" + e + i + "Ygy_4c=r#e#4EX^NUGUc5" md5 = hashlib.md5() md5.update(str_sign.encode()) sign = md5.hexdigest() # print(sign) data_old = { 'i': e, 'from': 'AUTO', 'to': 'AUTO', 'smartresult': 'dict', 'client': 'fanyideskweb', 'salt': i, 'sign': sign, 'lts': r, 'bv': conf.get('config', 'bv'), 'doctype': 'json', 'version': '2.1', 'keyfrom': 'fanyi.web', 'action': 'FY_BY_REALTlME' } return data_old data = data_new(a) # 请求 result = requests.post(url, headers=header, data=data).text # print(result) # 数据筛选 dict_res = json.loads(result) b = dict_res['translateResult'][0][0]['tgt'] print(b + '\n') # copy pyperclip.copy(a + '\n' + b) time.sleep(0.02) # 弹窗 root = tk.Tk() root.title("info") tk.Label(root, text="已复制", ).pack() # 弹窗显示 root.after(1000, lambda: root.destroy()) # 停留1s root.mainloop() 创建 OCR.ini 文件,复制以下内容 , 把在 准备工作 获取的 AppID 、 API Key 和 Secret Key 对应填入[aip] APP_ID = API_KEY = SECRET_KEY = [config] User-Agent = Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36 Cookie = OUTFOX_SEARCH_USER_ID=1870252624@10.110.96.157; OUTFOX_SEARCH_USER_ID_NCOO=1338974472.751384; ___rl__test__cookies=1654489795853 bv = dbf26599b4389c828cae8b896c9b0708最后自行打包 (不打包在pycharm里也能用) pyinstaller -F 文件名.py # pyinstaller -F 文件名.pyw打包后 使用教程代码已打包上传到 github 和 gitee 上打开 new_OCR\dist\OCR.ini 文件,把在 准备工作 获取的 AppID 、 API Key 和 Secret Key 对应填入 , 运行exe文件 即可[aip] APP_ID = API_KEY = SECRET_KEY = 如出现闪退 / 想换成自己的 , 请 / 可 更换以下内容[config] User-Agent = Cookie = bv = 方法如下F12 打开 开发者工具 ,选择 Network , 然后选择 XHR在 翻译框 输入任意 文字 ,页面 会出现 translate_ (如有多个选最新)点击 translate_ ,在 Headers 页面可以找到 User-Agent 和 Cookie ,在 Payload 页面可以找到bv (火狐浏览器的 bv 在请求页面)把找到的内容 替换 ini 文件内容 ,重新运行 即可如 不清楚文字描述 可按 如图 1 所示 步骤 即可图 1最后代码已在 github 和 gitee 上开源这个百度 OCR 只能翻译第一行的内容,多行无法翻译 个人版的调用次数已经够用了,不建议多对一,建议一对一
2022年12月25日
38 阅读
0 评论
0 点赞
2022-12-25
把github贡献日历部署到博客上(二)
前言原教程已经说得很详细了,这里演示 简化版原教程源自 Gainii 大佬效果展示教程直接部署这里用到了 2016rshah 大佬 的方法。 <img src="https://ghchart.rshah.org/github用户名" alt="github用户名's Github chart" />这个方法最绝的地方是,将你自己的贡献日历变成了图片,只需要使用一行 HTML 语句,就可以在任何地方使用贡献日历。如我在当前页面下部署 <img src="https://ghchart.rshah.org/12thstan" alt="12thstan's Github chart" />自定义 颜色自定义 颜色 #000000 十六进制颜色代码 注意格式不带# <img src="https://ghchart.rshah.org/000000/github用户名" alt="github用户名's Github Chart" />蓝色 #0000FF <img src="https://ghchart.rshah.org/0000FF/12thstan" alt="12thstan's Github Chart" />红色 #ff0000 <img src="https://ghchart.rshah.org/ff0000/12thstan" alt="12thstan's Github Chart" />绿色 #00785D <img src="https://ghchart.rshah.org/00785D/12thstan" alt="12thstan's Github Chart" />部署到 Next 主题这部分是关于 Next 主题的设置,请 点击链接 移步到 Next 主题把github贡献日历部署到博客上(二)补充如不能使用 HTML语句 可看另一种写法 把github贡献日历部署到博客上(二)第一篇 把github贡献日历部署到博客上(一)
2022年12月25日
25 阅读
0 评论
0 点赞
1
2