微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

寻找有关在我的搜索结果中添加随机化器的帮助

如何解决寻找有关在我的搜索结果中添加随机化器的帮助

代码的目的是在discord服务器上运行机器人。现在它可以搜索图像,但是我想将结果随机化。

我有以下变量- var rnd = Math.floor(Math.random()* search.results.length); 但我不确定它的格式是否正确或放置位置正确。

这是我的代码

var cheerio = require("cheerio"); /* Used to extract html content,based on jQuery || install with npm install cheerio */
var request = require("request"); /* Used to make requests to URLs and fetch response  || install with npm install request */

var discord = require("discord.js");
var client = new discord.Client();


// Login into discord using bot token (do not share token with anyone!).
client.login("");

client.on("ready",function() {
    console.log("logged in");
});

client.on("message",function(message) {

    var parts = message.content.split(" "); 

    /* Simple command manager */
    if (parts[0] === "search.") { 

        // call the image function
        image(message,parts); // Pass requester message to image function

    }

});

function image(message,parts) {

    /* extract search query from message */

    var search = parts.slice(1).join(" "); 

    var options = {
        url: "http://results.dogpile.com/serp?qc=images&q=" + search,method: "GET",headers: {
            "Accept": "text/html","User-Agent": "Chrome"
        }
    };
    request(options,function(error,response,responseBody) {
        if (error) {
            // handle error
            return;
        }

        $ = cheerio.load(responseBody); 
        
        var urls = new Array(links.length).fill(0).map((v,i) => links.eq(i).attr("href"));
        console.log(urls);
        if (!urls.length) {
            // Handle no results
            return;
        }

        // Send result
        message.channel.send( urls[0] );
    });

client.on('message',msg => {
  if (msg.content === 'ping') {
    msg.reply('pong');
} else if (msg.content === '') {
  msg.reply('');
} else if (msg.content === '') {
  msg.reply('');
} else if (msg.content === '') {
  msg.reply('');
} else if (msg.content === '') {
  msg.reply('');
}
});

}

谢谢

解决方法

我想您正在尝试从获取并存储在 var urls 中的结果中获取随机图像。 (如果有所不同,请扩大您的问题)

因为您已经生成了限制为 rnd 的变量,其结果长度的最大值为最大值。

您可以通过更改以下行来返回随机结果。

message.channel.send( urls [rnd] );

,

我能够使其与以下产品一起使用:

    message.channel.send( urls[Math.floor((Math.random() * 50) + 1)] );

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?