Esempio n. 1
0
    def search_manga_title (self):
        query = mal.MangaSearch (self.user_request_manga_name)
        query_manga_name = query.results[0].title

        return query_manga_name
Esempio n. 2
0
    def search_manga_image (self):
        query = mal.MangaSearch (self.user_request_manga_name)
        query_manga_image = query.results[0].image_url

        return query_manga_image
Esempio n. 3
0
    def serach_manga_url (self):
        query = mal.MangaSearch (self.user_request_manga_name)
        query_manga_url = query.results[0].url

        return query_manga_url
Esempio n. 4
0
    def search_manga_synopsis (self):
        query = mal.MangaSearch (self.user_request_manga_name)
        query_manga_synopsis = query.results[0].synopsis

        return query_manga_synopsis
Esempio n. 5
0
    async def msearch(self, ctx, *, string):
        if ctx.author.bot:
            return

        def check(reaction, user):
            return user == ctx.author and str(reaction.emoji) in reactions

        async with ctx.typing():
            results = mal.MangaSearch(string).results
            await asyncio.sleep(3)
        if len(results) > 0:
            st = ""
            i = 0
            for res in results[0:10]:
                st += f" {i} -> {res.title} ({res.mal_id})\n"
                i += 1
            message = await ctx.send(
                f'Se han encontrado los siguientes titulos (id):\n```{st}```')
            for a in range(0, i):
                await message.add_reaction(reactions[a])
            try:
                reaction, user = await self.bot.wait_for('reaction_add',
                                                         timeout=60.0,
                                                         check=check)
                await message.delete()
                index = reactions.index(str(reaction))
                async with ctx.typing():
                    manga = mal.Manga(results[index].mal_id)
                    await asyncio.sleep(3)
                genres = "|"
                for a in manga.genres:
                    genres += f" {a} |"

                title = manga.title_english
                if title is None:
                    title = manga.title
                embed = discord.Embed(title=f"{title}",
                                      url=f"{manga.url}",
                                      description=f"Score: {manga.score}",
                                      color=0x1ffb13)
                embed.set_thumbnail(url=f"{manga.image_url}")
                embed.add_field(name="Generos",
                                value=f"{genres}",
                                inline=False)
                embed.add_field(
                    name="Duracion",
                    value=
                    f"{manga.volumes} volumenes y {manga.chapters} capitulos",
                    inline=False)
                embed.add_field(name="Synopsis",
                                value=f"{manga.synopsis[0:1020]}...",
                                inline=False)
                await ctx.send(embed=embed)
            except asyncio.TimeoutError:
                await message.delete()
                await ctx.send("Se ha agotado el tiempo de respuesta!")
        elif len(results) == 1:
            manga = mal.Manga(results[0].mal_id)
            genres = ""
            for a in manga.genres:
                genres += f" {a} |"

            title = manga.title_english
            if title is None:
                title = manga.title
            embed = discord.Embed(title=f"{title}",
                                  url=f"{manga.url}",
                                  description=f"Score: {manga.score}",
                                  color=0x1ffb13)
            embed.set_thumbnail(url=f"{manga.image_url}")
            embed.add_field(name="Generos", value=f"{genres}", inline=False)
            embed.add_field(
                name="Duracion",
                value=f"{manga.volumes} volumenes y {manga.chapters} capitulos",
                inline=False)
            embed.add_field(name="Synopsis",
                            value=f"{manga.synopsis[0:1020]}...",
                            inline=False)
            await ctx.send(embed=embed)

        else:
            await ctx.send('Sin resultados!')