return ans1, ans2
??? from dataclasses import dataclass, field
from multiprocessing import Pool
from random import randint
class Driver:
def get(self, url):
print(url)
def close(self):
print('close')
@dataclass
class WebDriver:
xpath: str = field(default='')
url: str = field(default='')
content: list = field(default_factory=list)
driver: any = None
def __post_init__(self):
self.driver.get(self.url)
def get_content(self):
pass
def return_result(self):
for _ in range(10):
self.get_content()
return self.content
def close(self):
self.driver.close()
class Yandex(WebDriver):
def get_content(self):
self.content.append(f'yandex content {randint(1, 1000)}')
class Google(WebDriver):
def get_content(self):
self.content.append(f'yandex content {randint(1, 1000)}')
def start_parser(ClassParser):
parser = ClassParser(driver=Driver())
return parser.return_result()
if __name__ == "__main__":
pool = Pool(processes=2)
l = [v for v in pool.map(start_parser, [Yandex, Google])]
print(l)
class A:
def blabla(self):
print('blabla')
class С:
def blabla(self):
print('blabla')
def decor(fn):
def verified(*args, **kwargs):
print('verified: blabla')
return fn(*args, **kwargs)
return verified
# Зачем то добавили декоратор, но все про это забуд пока не сломается.
A.blabla = decor(A.blabla)
class B(С):
@decor
def blabla(self):
"""
Переопредили метод, для понятных целей. при использовании кастомного класса
будет понятнее что поведение может отличатся от задокументированного.
:return:
"""
super().blabla()
B().blabla()
A().blabla()
Чем мне Python профилировать? В данном случае.вот серьезно?
а по факту у вас не где нет выхода из бесконечного цикла.