From c65787b6bd3157e0979ffbcea8d5176a013bf073 Mon Sep 17 00:00:00 2001 From: Von Random Date: Fri, 10 Nov 2023 01:02:27 +0200 Subject: [PATCH] fix y_search --- pgbotlib/api.py | 14 +++++++------- pgbotlib/commands.py | 1 - 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/pgbotlib/api.py b/pgbotlib/api.py index 20ea1ec..7172c6d 100644 --- a/pgbotlib/api.py +++ b/pgbotlib/api.py @@ -5,9 +5,9 @@ import random import re import typing -import requests import bs4 import fake_headers +import requests import pgbotlib.dbstuff @@ -69,14 +69,14 @@ class ApiWrapper: 'isize': 'medium'}, headers=self.headers.generate()) parser = bs4.BeautifulSoup(request.text, 'html.parser') - items_place = parser.find('div', {'class': 'serp-list'}) - items = items_place.find_all('div', {'class': 'serp-item'}) + items_tag = parser.find('div', {'role': 'main'}) + items_full = json.loads(items_tag.find('div')['data-state']) + items = items_full['initialState']['serpList']['items']['entities'] images = [] - for item in items: - data = json.loads(item.get('data-bem')) - images.append(data['serp-item']['img_href']) + for item in items.values(): + images.append(item.get('origUrl')) if not images: - return None + return self.FAILED result = random.choice(images) return f'[url]({result})' diff --git a/pgbotlib/commands.py b/pgbotlib/commands.py index dd792fe..1dfe22b 100644 --- a/pgbotlib/commands.py +++ b/pgbotlib/commands.py @@ -3,7 +3,6 @@ import telethon import telethon.utils -import pgbotlib.api import pgbotlib.dbstuff import pgbotlib.misc import pgbotlib.response