如何获取多个用户集:从Account ts.txt传递 [英] How to get more than 1 set of User:Pass from Accounts.txt
本文介绍了如何获取多个用户集:从Account ts.txt传递的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个用户名:密码的列表,我想要将它们分开,我如何才能这样做:
let username = usernameValue;
let password = passwordValue;
这样我就可以有一个很大的列表,比如10多个用户名/密码,我的脚本可以自动从txt文件中提取这些用户名/密码,然后登录到每个单独的帐户。
const fs = require('fs')
const path = require('path')
const accounts = fs.readFileSync(path.resolve('./../../settings/accounts.txt'), 'utf8')
const [usernameValue, passwordValue] = accounts.split(':');
console.log(usernameValue);
// 'username'
console.log(passwordValue);
// 'password'
上述代码的一部分摘自我的原始question on here
count ts.txt
test:test
test2:test2
test3:test3
输出
test - username
test - password
test2 - username
它不会输出每个值,我也不知道原因。
推荐答案
如果是逐行的,您可以使用包readline
。例如:
const readline = require("readline");
const fs = require("fs");
const rl = readline.createInterface({
input: fs.createReadStream(__dirname + "/accounts.txt"),
});
rl.on("line", (line) => {
const [usernameValue, passwordValue] = line.split(':');
console.log(`${usernameValue} - ${passwordValue}`);
});
如果您希望行输出之间有延迟,您可以设置一个间隔并处理存储在缓冲区中的信息:
const readline = require("readline");
const fs = require("fs");
const rl = readline.createInterface({
input: fs.createReadStream(__dirname + "/accounts.txt"),
});
const buffer = [];
let isDonde = false;
rl.on("line", (line) => {
buffer.push(line.split(':'));
});
rl.on("close", () => {
isDonde = true;
})
let interval = setInterval(() => {
if (!buffer.length) {
if (isDonde) {
clearInterval(interval);
}
return;
}
const [usernameValue, passwordValue] = buffer.shift();
console.log(`${usernameValue} - ${passwordValue}`);
}, 1000); // higher is more time between logs
这篇关于如何获取多个用户集:从Account ts.txt传递的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文