Итак, я пытаюсь написать бота, который пишет в Facebook: «Вы бы не (случайный глагол) a (случайное существительное), не так ли?» каждый час. У меня есть длинный список глаголов и существительных под названием «verbs.txt» и «nouns.txt». У меня возникли проблемы с тем, чтобы заставить программу читать файлы, выбирать случайное слово из файлов и сохранять его в переменной. Я пробовал довольно много разных вещей, но безрезультатно, я вернул свой код к этой версии, за исключением неопределенных переменных.
let postContents = "You wouldn't" + verb + " a " + noun + ", would you?";
FB.api('me/feed', 'post', { message: postContents }, res => {
if (!res || res.error) {
return console.error(!res ? 'error occurred' : res.error);
}
console.info(`Post ID: ${res.id}`);
});
Предполагая, что файлы выглядят так:
noun
noun1
Вы можете загрузить это как таковое. Это синхронным способом. Вы также можете сделать это асинхронным способом, если хотите.
const fs = require("fs");
const nounFile = "nouns.txt";
const verbFile = "verbs.txt";
const readFile = function (file) {
return fs.readFileSync(file).toString().split("\n");
};
const randomItem = function (items) {
return items[Math.floor(Math.random() * items.length)];
};
const nouns = readFile(nounFile);
const verbs = readFile(verbFile);
const noun = randomItem(nouns);
const verb = randomItem(verbs);
Я должен был уточнить, что существительные - это не одно существительное в файле, это список существительных в одном файле с пометкой 'nouns.txt'
Ничего себе, я разобрался, большое спасибо за помощь
Ах, Шон, мой парень, ты король боссов, большое спасибо, ты мой герой. Прямо сейчас он публикует весь список существительных, которые у меня есть. Это из-за того, как я организовал свой текстовый файл? Прямо сейчас это делается одним словом в строке и линией между всеми словами.