Skip to content

Instantly share code, notes, and snippets.

import numpy as np
import json
import subprocess
test_binaries = [
"a.exe",
"b.exe"]
test_args_path = 'test_args.json'
@vladgovor77771
vladgovor77771 / test.js
Created June 5, 2021 17:04
Cloudflare: Curl vs node-libcurl vs axios vs node-fetch
const logger = console;
const main = async () => {
logger.info("Testing curl exec");
await testCurlExec();
logger.info("Testing node-libcurl");
await testNodeLibCurl();
logger.info("Testing axios");
await testAxios();
logger.info("Testing node-fetch");
@vladgovor77771
vladgovor77771 / .js
Created April 23, 2021 23:37
remove_fake_ifs.js
const fs = require("fs");
const input = fs.readFileSync("test.js").toString().split("\n");
const ifRegex = /^(\s*)if \((.{7}) (===|!==) (.{7})\)( {|)/;
const elseRegex = /^(\s*)(} else {|} else|else {|else)/;
const removeElseBlock = (index, matches) => {
let spacesCount = matches[1].length;
// remove "if ... statement"
if (matches[5] == " {") {
const { TmItem, SteamItem, TmMetaAnalysis } = require('../../../models');
const { Op } = require('sequelize');
const getBotSettings = require('../get_bot_settings');
module.exports = run = async (job) => {
let { botId } = job.data;
let {
minPrice,
maxPrice,
const calculateBuySellPrice = ({ sellings, mounthAgo }) => {
let trendWeight = 0.05; // диапазон средних точек 0.08
let average = calculateAveragePrice(sellings.slice(0, mounthAgo));
let min = [];
let max = [];
let first = 0;
let last = 0;
let minEl = 0;
let maxEl = 0;
@vladgovor77771
vladgovor77771 / index.js
Last active November 23, 2020 17:25
Queue arena based on bullmq. Allows chaining jobs.
const { Queue, QueueEvents } = require('bullmq');
const { EventEmitter } = require('events');
const config = require('../config');
const createUid = require('uid');
class QueueArena extends EventEmitter {
constructor({ redisDb = 1 }) {
super();
this.redisDb = redisDb;
@vladgovor77771
vladgovor77771 / chained_queue.js
Last active August 5, 2020 00:01
Chained queue implemetation
const BullQueue = require('bull');
const EventEmitter = require('events');
const createUid = require('uid');
class ChainedQueue extends BullQueue {
constructor(...args) {
super(...args);
this.ee = new EventEmitter();
this.on('global:completed', (jobId, result) => this.ee.emit(`job:${jobId}:completed`, result));
-----BEGIN CERTIFICATE-----
TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5v
dCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAABQRQAATAEDAE6bRV4AAAAA
AAAAAOAAIgALATAAABIAAAAIAAAAAAAA1jEAAAAgAAAAQAAAAABAAAAgAAAAAgAA
BAAAAAAAAAAGAAAAAAAAAACAAAAAAgAAAAAAAAMAYIUAABAAABAAAAAAEAAAEAAA
AAAAABAAAAAAAAAAAAAAAIQxAABPAAAAAEAAALwFAAAAAAAAAAAAAAAAAAAAAAAA
AGAAAAwAAABMMAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAIAAACAAAAAAAAAAAAAAACCAAAEgAAAAAAAAAAAAAAC50ZXh0AAAA
3BEAAAAgAAAAEgAAAAIAAAAAAAAAAAAAAAAAACAAAGAucnNyYwAAALwFAAAAQAAA
This file has been truncated, but you can view the full file.
-----BEGIN CERTIFICATE-----
TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5v
dCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAABQRQAAZIYKAAAAAAAAukoA
lQEAAPAAJwALAgIeABAzAACoSgAARgEAEBUAAAAQAAAAAEAAAAAAAAAQAAAAAgAA
BAAAAAAAAAAFAAIAAAAAAABQTAAAEAAAngpMAAMAAAAAACAAAAAAAAAQAAAAAAAA
AAAQAAAAAAAAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAA4EsApDYAAAAAAAAAAAAA
ABBHACTXAQA49EoAWCsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
IDBMACgAAAAAAAAAAAAAAAAAAAAAAAAADO1LAFgMAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAudGV4dAAAAJgJMwAAEAAAABAzAAAQAAAAAAAAAAAAAAAAAABgANBg
This file has been truncated, but you can view the full file.
-----BEGIN CERTIFICATE-----
TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5v
dCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAABQRQAAZIYKAAAAAAAAukoA
lQEAAPAAJwALAgIeABAzAACoSgAARgEAEBUAAAAQAAAAAEAAAAAAAAAQAAAAAgAA
BAAAAAAAAAAFAAIAAAAAAABQTAAAEAAAngpMAAMAAAAAACAAAAAAAAAQAAAAAAAA
AAAQAAAAAAAAEAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAA4EsApDYAAAAAAAAAAAAA
ABBHACTXAQA49EoAWCsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
IDBMACgAAAAAAAAAAAAAAAAAAAAAAAAADO1LAFgMAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAudGV4dAAAAJgJMwAAEAAAABAzAAAQAAAAAAAAAAAAAAAAAABgANBg