diff --git a/src/cogs/booru.py b/src/cogs/booru.py index e72c203..ca9ba20 100644 --- a/src/cogs/booru.py +++ b/src/cogs/booru.py @@ -28,7 +28,6 @@ class MsG: self.bot = bot self.LIMIT = 100 self.HISTORY_LIMIT = 150 - self.RATE_LIMIT = u.RATE_LIMIT self.reversiqueue = asyncio.Queue() self.heartqueue = asyncio.Queue() self.reversifying = False @@ -132,16 +131,12 @@ class MsG: if isinstance(temp[1], d.Embed): await temp[0].send(embed=temp[1]) - await asyncio.sleep(self.RATE_LIMIT) elif isinstance(temp[1], d.Message): for match in re.finditer('(https?:\/\/[^ ]*\.(?:gif|png|jpg|jpeg))', temp[1].content): await temp[0].send(match) - await asyncio.sleep(self.RATE_LIMIT) - for attachment in temp[1].attachments: await temp[0].send(attachment.url) - await asyncio.sleep(self.RATE_LIMIT) print('STOPPED : hearting') @@ -240,21 +235,17 @@ class MsG: await dest.trigger_typing() for tag in tags: - try: - tag_request = await u.fetch('https://e621.net/tag/related.json', params={'tags': tag}, json=True) - for rel in tag_request.get(tag, []): - related.append(rel[0]) + tag_request = await u.fetch('https://e621.net/tag/related.json', params={'tags': tag}, json=True) + for rel in tag_request.get(tag, []): + related.append(rel[0]) if related: await dest.send('`{}` **related tags:**\n```\n{}```'.format(tag, formatter.tostring(related))) else: await ctx.send(f'**No related tags found for:** `{tag}`', delete_after=7) - related.clear() - c += 1 - - finally: - await asyncio.sleep(self.RATE_LIMIT) + related.clear() + c += 1 if not c: await ctx.message.add_reaction('\N{CROSS MARK}') @@ -270,21 +261,17 @@ class MsG: await dest.trigger_typing() for tag in tags: - try: - alias_request = await u.fetch('https://e621.net/tag_alias/index.json', params={'aliased_to': tag, 'approved': 'true'}, json=True) - for dic in alias_request: - aliases.append(dic['name']) + alias_request = await u.fetch('https://e621.net/tag_alias/index.json', params={'aliased_to': tag, 'approved': 'true'}, json=True) + for dic in alias_request: + aliases.append(dic['name']) if aliases: await dest.send('`{}` **aliases:**\n```\n{}```'.format(tag, formatter.tostring(aliases))) else: await ctx.send(f'**No aliases found for:** `{tag}`', delete_after=7) - aliases.clear() - c += 1 - - finally: - await asyncio.sleep(self.RATE_LIMIT) + aliases.clear() + c += 1 if not c: await ctx.message.add_reaction('\N{CROSS MARK}') @@ -305,10 +292,9 @@ class MsG: raise exc.MissingArgument for ident in posts: - try: - await dest.trigger_typing() + await dest.trigger_typing() - ident = ident if not ident.isdigit() else re.search( + ident = ident if not ident.isdigit() else re.search( 'show/([0-9]+)', ident).group(1) post = await u.fetch('https://e621.net/post/show.json', params={'id': ident}, json=True) @@ -317,13 +303,8 @@ class MsG: embed.set_thumbnail(url=post['file_url']) embed.set_author(name=f'{post["width"]} x {post["height"]}', url=f'https://e621.net/post?tags=ratio:{post["width"]/post["height"]:.2f}', icon_url=ctx.author.avatar_url) - embed.set_footer(text=post['score'], - icon_url=self._get_score(post['score'])) - - # except - - finally: - await asyncio.sleep(self.RATE_LIMIT) + embed.set_footer(text=post['score'], + icon_url=self._get_score(post['score'])) except exc.MissingArgument: await ctx.send('**Invalid url**', delete_after=7) @@ -340,19 +321,15 @@ class MsG: raise exc.MissingArgument for url in urls: - try: - await dest.trigger_typing() + await dest.trigger_typing() - await dest.send(await scraper.get_image(url)) + await dest.send(await scraper.get_image(url)) c += 1 # except # await ctx.send(f'**No aliases found for:** `{tag}`', delete_after=7) - finally: - await asyncio.sleep(self.RATE_LIMIT) - if not c: await ctx.message.add_reaction('\N{CROSS MARK}') @@ -563,8 +540,6 @@ class MsG: await message.add_reaction('\N{WHITE HEAVY CHECK MARK}') - await asyncio.sleep(self.RATE_LIMIT) - with suppress(err.NotFound): await message.delete() @@ -878,8 +853,6 @@ class MsG: n = 1 for embed in hearted.values(): - await asyncio.sleep(self.RATE_LIMIT) - await ctx.author.send(content=f'`{n} / {len(hearted)}`', embed=embed) n += 1 @@ -1039,8 +1012,6 @@ class MsG: n = 1 for embed in hearted.values(): - await asyncio.sleep(self.RATE_LIMIT) - await ctx.author.send(content=f'`{n} / {len(hearted)}`', embed=embed) n += 1 @@ -1203,8 +1174,6 @@ class MsG: n = 1 for embed in hearted.values(): - await asyncio.sleep(self.RATE_LIMIT) - await ctx.author.send(content=f'`{n} / {len(hearted)}`', embed=embed) n += 1 diff --git a/src/cogs/management.py b/src/cogs/management.py index ec62cce..bc775b5 100644 --- a/src/cogs/management.py +++ b/src/cogs/management.py @@ -17,7 +17,6 @@ class Administration: def __init__(self, bot): self.bot = bot - self.RATE_LIMIT = u.RATE_LIMIT self.queue = asyncio.Queue() self.deleting = False @@ -145,7 +144,6 @@ class Administration: async def delete(self): while self.deleting: message = await self.queue.get() - await asyncio.sleep(self.RATE_LIMIT) with suppress(err.NotFound): if not message.pinned: await message.delete() diff --git a/src/utils/scraper.py b/src/utils/scraper.py index d03990a..581053e 100644 --- a/src/utils/scraper.py +++ b/src/utils/scraper.py @@ -15,12 +15,10 @@ async def get_post(url): filesize = int(image.headers['Content-Length']) if filesize > 8192 * 1024: raise exc.SizeError(size(filesize, system=alternative)) - + except ValueError: raise exc.MissingArgument - await asyncio.sleep(u.RATE_LIMIT) - content = await u.fetch('http://iqdb.harry.lu', params={'url': url}) try: diff --git a/src/utils/utils.py b/src/utils/utils.py index e5f1514..e9cf70f 100644 --- a/src/utils/utils.py +++ b/src/utils/utils.py @@ -87,7 +87,6 @@ temp = setdefault('temp/temp.pkl', default={'startup': ()}) secrets = setdefault('secrets.json', default={'client_secrets': {'client_id': '', 'client_secret': ''}}, json=True) cogs = {} -RATE_LIMIT = 2.2 color = d.Color(0x1A1A1A) session = aiohttp.ClientSession() last_commands = {}