03 Nisan 2023, 04:24
#1 Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
Discord Bot (Veri çekme Örnek)
Merhaba dün can sıkıntısıyla uğraşırken ufak bir deneme yaptım baya basitmiş sizinle de paylaşmak istedim veri çekmede örnek olur belki;
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN... ] Kod: Kodu kopyalamak için üzerine çift tıklayın!
const Discord = require("discord.
js ");
const axios = require("axios");
const iconv = require("iconv-lite");
const sqlite3 = require('sqlite3').verbose();
const party = new Discord.Client();
const db = new sqlite3.Database('party.db');
db.get("SELECT name FROM sqlite_master WHERE type='table' AND name='sözler'", (err, row) => {
if (err) { console.error(err.message); }
else if (!row) {
db.run("CREATE TABLE sözler (söz TEXT, ekleyen TEXT)", (err) => {
if (err) { console.error(err.message); }
});
}
});
party.on("ready", () => {
console.log('Sunucuya giriş yapıldı!');
party.user.setActivity('Eğlence botu!', { type: 'PLAYING' });
party.guilds.cache.forEach((guild) => { console.log(` - ${guild.name} (${guild.id})`); });
});
party.on("message", async message => {
if (message.channel.type === "text") {
const komut = message.content.split(/ +/);
if (/^[!.]bur[cçÇ]$/i.test(komut[0])) {
if (!komut[1]) { message.delete(); message.reply('```fix\nLütfen bir burç belirtin. Örnek: !burç başak```'); }
else if (!/^(ko[cçÇ]|bo[gğĞ]a|[ıiİ]k[ıiİ]zler|yenge[cçÇ]|aslan|ba[sşŞ]ak|teraz[ıiİ]|akrep|yay|o[gğĞ]lak|kova|bal[ıiİ]k)$/i.test(komut[1])) { message.delete(); message.reply('```fix\nLütfen geçerli bir burç belirtin. Örnek: !burç başak```'); }
else {
const burc = komut[1]
.trim()
.toLowerCase()
.replace(/[çÇ]/g, "c")
.replace(/[ğĞ]/g, "g")
.replace(/[ıİ]/g, "i")
.replace(/[şŞ]/g, "s")
.replace(/[öÖ]/g, "o")
.replace(/[üÜ]/g, "u");
const bsite = `https://igs.mirc.net.tr/burc.php?burc=${burc}`;
try {
const response = await axios.get(bsite, { responseType: 'arraybuffer' });
const veri = response.data;
const decoder = new TextDecoder('ISO-8859-9');
const html = decoder.decode(veri);
const data = /Burc: (.+) Burcu \((.+)\) <br \/>/i.exec(html);
const oku = /Yorum: (.+)<br \/>/i.exec(html);
if (data) { message.channel.send('```fix\n======== ' + data[1].toUpperCase() + ' (' + data[2] + ') ========```'); }
if (oku) { message.channel.send('```fix\n' + oku[1] + '```'); }
}
catch (error) { console.error(error); }
}
}
else if (/^[!.]s[oöÖ]zekle$/i.test(komut[0])) {
const söz = message.content.slice(8).trim();
if (!söz) { message.delete(); message.reply('```fix\nLütfen söz belirtin. Örnek: !sözekle Bir umuttur yaşamak.```\n'); }
else if (söz.length < 10) { message.delete(); message.reply('```fix\nLütfen daha uzun bir söz belirtin.```\n'); }
else {
const ekleyen = message.author.username;
db.get("SELECT * FROM sözler WHERE söz = ?", [söz], (err, row) => {
if (err) { console.error(err.message); }
else if (row) { message.reply('```fix\n ' + söz + ' (sözü daha önce eklenmiş.)```\n'); }
else {
db.run(`INSERT INTO sözler (söz, ekleyen) VALUES (?, ?)`, [söz, ekleyen], function(err) {
if (err) { console.error(err.message); }
else { message.reply('```fix\n ' + söz + ' (sözü eklendi.)```\n'); }
});
}
});
}
}
else if (/^[!.]s[oöÖ]z$/i.test(komut[0])) {
db.get("SELECT * FROM sözler ORDER BY RANDOM() LIMIT 1", (err, row) => {
if (err) { console.error(err.message); }
else if (!row) { message.reply('```fix\nHenüz söz eklenmemiş.```\n'); }
else { message.reply('```fix\nSöz: ' + row.söz + ' (' + row.ekleyen + ') ```\n'); }
});
}
}
});
party.login('TOKEN');