Sobes.tech
Middle+
37

«Жазгыла код, ал ишке ашырат чын тексттен шилтемелерди чыгарып, аларды белгилүү эрежелер боюнча сорттоп: Кайтарылчу шилтемелердин тизмеси дублдар болбошу керек: Сорттоо эрежелери төмөндөгүчө: - Приоритет 1: Биринчиден, биринчи табылган шилтемелер, self.first_extracted_links санына чейин - Приоритет 2: Андан кийин булут сактагычтар жана документтерге шилтемелер (Yandex Disk жана башка) - Приоритет 3: Андан кийин файлдарга шилтемелер (жолдун аягында кеңейтүүлөр .exe, .pdf, .rar жана башка) - Приоритет 4: Калган шилтемелер, узундугу боюнча кыскадан узакка чейин сорттолгон Ошондой эле шилтемелердин санына чектөө коюп, контексттик менеджерди ишке ашырыңыз: Мисалы, [link] аркылуу ишке ашырса болот Жалпысынан: - Ишке ашыруу үчүн 30 мүнөт берилет - apply, process функцияларын жана контексттик менеджердин функцияларын жазуу - Бардык тесттер аяктоо керек - Тесттерди өзгөртүүгө болбойт - import'тарды колдонсо болот - Жазгандан кийин, жергиликтүү сыноо жүргүзүп, туура эмес болсо, бул баракчада оңдоңуз Шилтемелерди издөө regex: (?:https?|ftp):\/\/(?:[a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.[a-zA-Z]{2,}(?::\d+)?(?:\/[^\s()]*)?\n """ class LinkExtractor: DEFAULT_CLOUDS = frozenset(( "drive.google.com", "mediafire.com", "yadi.sk", "disk.yandex.ru", "cloud.mail.ru", "mega.nz" )) # Бул методту кеңейтип же кайра жазсаңыз болот def __init__(self, max_links: int = 7, first_extracted_links: int = 2, clouds = None): # Максималдуу шилтемелердин саны self.max_links = max_links # Биринчи шарт үчүн чыгарыла турган шилтемелердин саны self.first_extracted_links = first_extracted_links # Булут деп эсептелүүчү домендердин тизмеси self.clouds = clouds or self.DEFAULT_CLOUDS self._results = [] # Бул методду жазуу керек, ал тексттин бөлүгүн кошот, аны кийин анализдөө керек def apply(self, text) -> "LinkExtractor": ... return self

Кайсыл жерде компаниялар сурады
АВ Софт