- Install the required packages by running
pip install -r requirements.txtin your terminal. - Run the command
export TESSDATA_PREFIX=/usr/local/tessdatain your terminal to set the Tesseract data path. - Download the English language data from here and place it to the tessdata folder above.
- Run
main.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| VERSION=13 | |
| function cleanup() { | |
| docker rm -f master replica >&/dev/null | |
| rm -Rf $(pwd)/data $(pwd)/wal_archive | |
| } | |
| function wait_until_ready() { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @charset "UTF-8"; | |
| @import url("https://fonts.googleapis.com/css?family=Noto+Sans+TC:400,500&display=swap"); | |
| body { | |
| background-color: transparent !important; | |
| font-family: "Noto Sans TC", sans-serif !important; | |
| overflow-y: hidden !important; | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const express = require("express"); | |
| const cookieParser = require('cookie-parser') | |
| var crypto = require('crypto'); | |
| const secret = require("./secret.json"); | |
| const app = express(); | |
| app.use(cookieParser(secret.FLAG)); | |
| let canvas = { | |
| ...Array(128).fill(null).map(() => new Array(128).fill("#FFFFFF")) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const dayjs = require("dayjs"); | |
| module.exports = { | |
| watchFundingTrades: async (ws, { symbol }, cb) => { | |
| ws.onFundingTradeEntry({ symbol }, trade => { | |
| const params = getParams(trade); | |
| const { datetime, rate, apy, period, amount } = params; | |
| console.log( | |
| `${datetime}\t${rate.toFixed(6)}\t${apy.toFixed( | |
| 6 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| var root = document.querySelector('#v-game-countdown').nextSibling; | |
| var rootObserver = new MutationObserver((mutations) => mutations.map(mutation => { | |
| [].slice.call(document.querySelectorAll('.v-game-target img')).map((target) => { | |
| target.click(); | |
| }); | |
| })); | |
| rootObserver.observe(root, { | |
| childList: true | |
| }); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const root = document.querySelector('#kolor-kolor'); | |
| const rootObserver = new MutationObserver((mutations) => mutations.map(mutation => { | |
| [].slice.call(document.querySelectorAll('#kolor-options li a')).map((option) => { | |
| if (option.style.backgroundColor === mutation.target.style.backgroundColor) { | |
| option.click(); | |
| } | |
| }); | |
| })); | |
| rootObserver.observe(root, { | |
| attributes: true, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const updateTitleAPI = fetch(url, { | |
| method: 'PUT', | |
| headers: { | |
| 'Accept': 'application/json', | |
| 'Content-Type': 'application/json' | |
| }, | |
| body: { title } | |
| }).then(res => res.json()); | |
| const updateTitle = title => ({ type: UPDATE_TITLE, payload: title }); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const updateTitle = title => { | |
| return async dispatch => { | |
| dispatch({ type: UPDATE_TITLE }); | |
| try { | |
| const res = await fetch(url, { | |
| method: 'PUT', | |
| headers: { | |
| 'Accept': 'application/json', | |
| 'Content-Type': 'application/json' | |
| }, |
[{"id":1,"jp":"フシギダネ","en":"Bulbasaur","tw":"妙蛙種子"},{"id":2,"jp":"フシギソウ","en":"Ivysaur","tw":"妙蛙草"},{"id":3,"jp":"フシギバナ","en":"Venusaur","tw":"妙蛙花"},{"id":4,"jp":"ヒトカゲ","en":"Charmander","tw":"小火龍"},{"id":5,"jp":"リザード","en":"Charmeleon","tw":"火恐龍"},{"id":6,"jp":"リザードン","en":"Charizard","tw":"噴火龍"},{"id":7,"jp":"ゼニガメ","en":"Squirtle","tw":"傑尼龜"},{"id":8,"jp":"カメール","en":"Wartortle","tw":"卡咪龜"},{"id":9,"jp":"カメックス","en":"Blastoise","tw":"水箭龜"},{"id":10,"jp":"キャタピー","en":"Caterpie","tw":"綠毛蟲"},{"id":11,"jp":"トランセル","en":"Metapod","tw":"鐵甲蛹"},{"id":12,"jp":"バタフリー","en":"Butterfree","tw":"巴大蝴"},{"id":13,"jp":"ビードル","en":"Weedle","tw":"獨角蟲"},{"id":14,"jp":"コクーン","en":"Kakuna","tw":"鐵殼昆"},{"id":15,"jp":"スピアー","en":"Beedrill","tw":"大針蜂"},{"id":16,"jp":"ポッポ","en":"Pidgey","tw":"波波"},{"id":17,"jp":"ピジョン","en":"Pidgeotto","tw":"比比鳥"},{"id":18,"jp":"ピジョット","en":"Pidgeot","tw":"比鵰"},{"id":19,"jp":"コラッタ","en":"Rattata","tw":"小拉達"},{"id":20,"jp":"ラッタ","en":"Raticate","tw":"拉達"},{"id":21,"jp":"オニスズメ","en":"Spearow","