KWT-2024/lab/lab_11.ipynb

690 lines
52 KiB
Plaintext
Raw Normal View History

2024-04-13 08:20:53 +02:00
{
"cells": [
{
"cell_type": "markdown",
"id": "expanded-entrance",
"metadata": {},
"source": [
"# Komputerowe wspomaganie tłumaczenia"
]
},
{
"cell_type": "markdown",
"id": "atlantic-greenhouse",
"metadata": {},
"source": [
"# Zajęcia 11 - urównoleglanie"
]
},
{
"cell_type": "markdown",
"id": "hungarian-davis",
"metadata": {},
"source": [
"Na poprzednich zajęciach poznaliśmy techniki pozyskiwania tekstu z Internetu. Jeśli uda nam się w ten sposób pozyskać tekst w jednym języku oraz jego tłumaczenie na inny język, jesteśmy tylko o krok od uzyskania najbardziej przydatnego zasobu z punktu widzenia wspomagania tłumaczenia - pamięci tłumaczeń. Krokiem tym jest automatyczne urównoleglanie tekstu."
]
},
{
"cell_type": "markdown",
"id": "bronze-removal",
"metadata": {},
"source": [
"Automatyczne urównoleglanie tekstu składa się z dwóch kroków:\n",
"1. Podziału tekstu źródłowego oraz docelowego na zdania.\n",
"2. Dopasowaniu zdań źródłowych do docelowych."
]
},
{
"cell_type": "markdown",
"id": "junior-works",
"metadata": {},
"source": [
"Zdania, o których mowa w punkcie 1., powinniśmy rozumieć jako segmenty, tj. niekoniecznie kompletne zdania w sensie gramatycznym. Standardowym sposobem podziału tekstu na segmenty jest dzielenie po znaku nowej linii lub zaraz po kropce, o ile jest ona częścią sekwencji: \".[spacja][Wielka litera]\""
]
},
{
"cell_type": "markdown",
"id": "legitimate-corrections",
"metadata": {},
"source": [
"### Ćwiczenie 1: Zaimplementuj podstawowy algorytm segmentacji tekstu. Użyj odpowiedniego wyrażenia regularnego, łapiącego wielkie litery w dowolnym języku, np. \"Ż\" (użyj klasy unikodowej). Zwróć listę segmentów."
]
},
{
"cell_type": "code",
2024-05-30 16:41:12 +02:00
"execution_count": 3,
2024-04-13 08:20:53 +02:00
"id": "german-dispute",
"metadata": {},
2024-05-30 16:26:42 +02:00
"outputs": [
{
"data": {
"text/plain": [
"['To jest przykładowy tekst.',\n",
" 'Nie wiem czym jest',\n",
" 'Python,',\n",
" 'ASCII i',\n",
" 'UNICODE.',\n",
" 'Ósmy raz sięgam ręką po borówkę.',\n",
" 'Żądło pszczoły jest kujące']"
]
},
2024-05-30 16:41:12 +02:00
"execution_count": 3,
2024-05-30 16:26:42 +02:00
"metadata": {},
"output_type": "execute_result"
}
],
2024-04-13 08:20:53 +02:00
"source": [
2024-05-30 16:26:42 +02:00
"import regex\n",
"\n",
2024-04-13 08:20:53 +02:00
"def sentence_split(text):\n",
2024-05-30 16:26:42 +02:00
" pattern = r'\\s(?=\\p{Lu})'\n",
" segments = regex.split(pattern, text)\n",
" return segments\n",
"\n",
"text = \"To jest przykładowy tekst. Nie wiem czym jest Python, ASCII i UNICODE. Ósmy raz sięgam ręką po borówkę. Żądło pszczoły jest kujące\"\n",
"sentence_split(text)"
2024-04-13 08:20:53 +02:00
]
},
{
"cell_type": "markdown",
"id": "continued-assessment",
"metadata": {},
"source": [
"### Ćwiczenie 2: Uruchom powyższy algorytm na treści wybranej przez siebie strony internetowej (do ściągnięcia treści strony wykorzystaj kod z laboratoriów nr 7). Zidentyfikuj co najmniej dwa wyjątki od ogólnej reguły podziału na segmenty i ulepsz algorytm."
]
},
{
"cell_type": "code",
2024-05-30 16:41:12 +02:00
"execution_count": 4,
2024-04-13 08:20:53 +02:00
"id": "guilty-morocco",
"metadata": {},
2024-05-30 16:26:42 +02:00
"outputs": [
{
"data": {
"text/plain": [
"['Jeżeli chodzi o UNICODE czy ASCII to nie wiem co to jest',\n",
" 'Jestem S444820 [',\n",
" 'Krystian Osiński',\n",
" '] Lubię jeść pizze',\n",
" 'Mam konto w banku Peako S.A i jestem z niego zadowolony.']"
]
},
2024-05-30 16:41:12 +02:00
"execution_count": 4,
2024-05-30 16:26:42 +02:00
"metadata": {},
"output_type": "execute_result"
}
],
2024-04-13 08:20:53 +02:00
"source": [
2024-05-30 16:26:42 +02:00
"import regex as r\n",
2024-04-13 08:20:53 +02:00
"def sentence_split_enhanced(text):\n",
2024-05-30 16:26:42 +02:00
" #Ulepszenie algorytmu: szukam indexu znaku białego który jest poprzedzany znakiem .?! i następuje po nim duża litera, ale przed znakiem musi wystąpić litera a-z (nie może) A-Z\n",
" # Dltaego dodatkowmo nie dziele zdań gdy wystąpią skróty pokroju S.A. oraz w przypadku wystąpienia Dużej litery w środku zdania -> segment nie jest tworzony.\n",
" # W dodatku obsługuję nawiasy () i [] -> pobieram zdania występujące w nawiasie\n",
"\n",
" pattern = r'(?<![A-Z])[.!?]\\s+(?=\\p{Lu})|\\s*[\\(\\[](.*?)[\\)\\]]\\s+'\n",
" pattern = r'(?<![A-Z])[.!?]\\s+(?=\\p{Lu})|(?<=\\()|(?=\\))|(?<=\\[)|(?=\\])'\n",
" segments = r.split(pattern, text)\n",
" return segments\n",
" \n",
"sentence_split_enhanced(\"Jeżeli chodzi o UNICODE czy ASCII to nie wiem co to jest. Jestem S444820 [Krystian Osiński] Lubię jeść pizze. Mam konto w banku Peako S.A i jestem z niego zadowolony.\")\n"
]
},
{
"cell_type": "code",
2024-05-30 16:41:12 +02:00
"execution_count": 5,
2024-05-30 16:26:42 +02:00
"id": "448e1c0f-9e25-48b1-b7d7-2ca96f70dde6",
"metadata": {},
"outputs": [],
"source": [
"import re\n",
"import requests\n",
"from bs4 import BeautifulSoup\n",
"\n",
"def get_text(url):\n",
"\n",
" page = requests.get(url)\n",
" soup = BeautifulSoup(page.content, 'html.parser')\n",
"\n",
" # usunięcie elementów script i style\n",
" for script in soup([\"script\", \"style\"]):\n",
" script.extract() # usuń element\n",
"\n",
" # pobierz tekst\n",
" text = soup.get_text()\n",
"\n",
" # usuń wielokrotne białe znaki\n",
" text = re.sub(r\"\\s+\", \" \", text)\n",
"\n",
" return(text)"
]
},
{
"cell_type": "code",
2024-05-30 16:41:12 +02:00
"execution_count": 6,
2024-05-30 16:26:42 +02:00
"id": "963380c7-ef58-402c-9fb3-05ce7058c681",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[' Spółka akcyjna podstawowe informacje | Biznes.gov.pl - Serwis informacyjno-usługowy dla przedsiebiorcy Przejdź do treści Przejdź do wyszukiwarki Przejdź do Centrum Pomocy gov.pl Serwis informacyjno-usługowy dla przedsiębiorcy × Zalogowany jako: e-Doręczenia Change language to English Ustawienia Wyloguj Logowanie Change language to English EN Biznes.gov.pl Informacje Katalog usług Wyszukiwarka firm Konto Przedsiębiorcy zamknij Konto Przedsiębiorcy Spółka akcyjna podstawowe informacje Obserwuj Przeczytaj podstawowe informacje o spółce akcyjnej',\n",
" 'Sprawdź jakie są jej najważniejsze cechy, jak powstaje, jaki ma majątek, kto reprezentuje spółkę oraz na czym polega odpowiedzialność wspólników',\n",
" 'Kluczowe cechy spółki akcyjnej Umowa założycielska spółki akcyjnej Statut spółki spółki akcyjnej Firma - oznaczenie spółki akcyjnej Rejestracja spółki akcyjnej w KRS Rejestracja w ZUS i zgłoszenie do ubezpieczeń Strona internetowa spółki Akcje i prawa z nich wynikające Kapitał zakładowy spółki akcyjnej Organy spółki akcyjnej Odpowiedzialność w spółce akcyjnej Podatki i księgowość w spółce akcyjnej Rozwiązanie spółki Kluczowe cechy spółki akcyjnej Spółka akcyjna jest kapitałową spółką handlową posiadającą osobowość prawną',\n",
" 'Założycielem spółki akcyjnej może być jeden lub większa liczba: osób fizycznych, osób prawnych, jednostek organizacyjnych nieposiadających osobowości prawnej, które posiadają zdolność prawną',\n",
" 'Spółki akcyjnej nie może założyć, jako jej jedyny akcjonariusz, jednoosobowa spółka z ograniczoną odpowiedzialnością',\n",
" 'Spółka akcyjna jest spółką prawa handlowego, w której wspólnicy uczestniczą w wyniku objęcia akcji wyemitowanych przez spółkę',\n",
" 'Kupno akcji spółki akcyjnej w wyniku objęcia akcji wyemitowanych przez spółkę (',\n",
" 'pierwotne',\n",
" '), lub w drodze nabycia istniejących już akcji, na przykład na podstawie umowy sprzedaży (',\n",
" 'wtórne',\n",
" ') powoduje, że właściciel akcji jest wspólnikiem spółki, czyli jej akcjonariuszem',\n",
" 'Spółka akcyjna to forma działalności, która: zapewnia anonimowość wspólników spółki akcyjnej, czyli jej akcjonariuszy jest odpowiednia dla dużych przedsięwzięć, w tym firm planujących wejście na giełdę jest obowiązkowa dla niektórych działalności, w tym banków oraz firm ubezpieczeniowych',\n",
" 'Wspólnikami spółki akcyjnej są akcjonariusze, którzy posiadają określoną liczbę akcji upoważniających do otrzymywania wyznaczonej części dywidendy',\n",
" 'Do założenia spółki akcyjnej wymagany jest kapitał 100 000 złotych',\n",
" 'Umowa założycielska spółki akcyjnej Pierwszym krokiem do powstania spółki akcyjnej jest zawarcie umowy założycielskiej, na którą składają się: statut jednostronne oświadczenia o przystąpieniu do spółki zgoda na brzmienie statutu oraz objęcie akcji',\n",
" 'Uwaga',\n",
" 'Statut spółki nie wywoła skutków prawnych bez złożenia oświadczeń zawierających zgodę na jego brzmienie oraz na objęcie akcji spółki',\n",
" 'Statut spółki spółki akcyjnej Statut spółki akcyjnej jest podstawowym dokumentem, w którym uregulowane są prawa i obowiązki założycieli, akcjonariuszy i organów spółki',\n",
" 'Do obowiązkowych elementów statutu należy określenie: firmy i siedziby spółki przedmiotu działalności spółki czasu trwania spółki, jeżeli jest oznaczony wysokości kapitału zakładowego kwoty, jaka została wpłacona przed zarejestrowaniem spółki na pokrycie kapitału zakładowego wartości nominalnej akcji i ich liczby ze wskazaniem, czy akcje imienne, czy na okaziciela liczby akcji poszczególnych rodzajów i związanych z nimi uprawnień, jeżeli w spółce będą występować akcje różnych rodzajów nazwisk i imion założycieli spółki liczby członków zarządu i rady nadzorczej albo co najmniej minimalnej lub maksymalnej liczby członków tych organów oraz podmiotu uprawnionego do ustalenia składu zarządu lub rady nadzorczej',\n",
" 'W statucie oprócz elementów obowiązkowych mogą znaleźć się również elementy fakultatywne: określenie minimalnej lub maksymalnej wysokości kapitału zakładowego określenie terminów i wysokości wpłat na akcje dodatkowe postanowienia dotyczące treści i formy dokumentu akcji ograniczenie możliwości rozporządzenia akcjami imiennymi określenie uprawnień rady nadzorczej utworzenie kapitałów rezerwowych',\n",
" 'Firma - oznaczenie spółki akcyjnej Firma spółki akcyjnej to jej nazwa, która może mieć charakter osobowy, przedmiotowy, fantazyjny lub mieszany',\n",
" 'W firmie spółki akcyjnej można umieścić nazwisko lub pseudonim osoby fizycznej, jeśli dzięki temu będzie można wyrazić związek tej osoby z powstaniem lub działalnością spółki akcyjnej',\n",
" 'Dodatkowo w firmie spółki musi znaleźć się określenie formy prawnej prowadzonej działalności, czyli słowa „spółka akcyjna” lub skrót „S.A”',\n",
" 'Rejestracja spółki akcyjnej w KRS Kolejnym warunkiem który musi zostać spełniony, aby spółka akcyjna zaczęła istnieć, jest wpis do rejestru przedsiębiorców',\n",
" 'Spółkę akcyjną rejestruje się w Krajowym Rejestrze Sadowym składając wniosek elektronicznie za pośrednictwem Portalu Rejestrów Sądowych',\n",
" 'Po rejestracji spółka zgłasza dane uzupełniające do urzędu skarbowego (',\n",
" 'formularz NIP-8',\n",
" ')',\n",
" 'To dane, których nie trzeba zgłaszać przy rejestracji, takie jak na przykład numery rachunków bankowych, przewidywana liczba pracowników, miejsca prowadzenia działalności oraz szczegółowe dane kontaktowe',\n",
" 'Dane te trafiają ZUS, GUS i urzędu skarbowego',\n",
" 'Spółka powinna je podać już po rozpoczęciu działalności w terminie 7 dni (',\n",
" 'dane dla ZUS',\n",
" ') lub w terminie 21 dni (',\n",
" 'dane dla GUS i urzędu skarbowego',\n",
" ') od dnia rejestracji spółki w KRS. Uwaga',\n",
" 'Każdy przedsiębiorca ma swój NIP (',\n",
" 'numer identyfikacji podatkowej, którym posługuje się w kontaktach z urzędem skarbowym',\n",
" ') i REGON (',\n",
" 'to numer w rejestrze Głównego Urzędu Statystycznego',\n",
" ')',\n",
" 'Te numery są nadawane są automatycznie, przy rejestracji spółki w KRS. Informacja o nadaniu NIP może zostać przekazana do KRS w terminie 3 dni',\n",
" 'Po zawiązaniu spółki akcyjnej, czyli po objęciu akcji w całości, ale przed wpisem do rejestru przedsiębiorców KRS powstaje spółka akcyjna w organizacji',\n",
" 'Organizująca się spółka akcyjna posiada zdolność prawną i zdolność do czynności prawnych',\n",
" 'Oznacza to, że może we własnym imieniu nabywać prawa, zaciągać zobowiązania, pozywać i być pozywana',\n",
" 'Spółkę w organizacji reprezentuje zarząd, a do chwili jego powołania ogół założycieli',\n",
" 'Spółka akcyjna w organizacji posiada własny majątek, którego wyłącznym właścicielem jest organizująca się spółka',\n",
" 'Jest to więc majątek odrębny od majątku akcjonariuszy',\n",
" 'Przeczytaj: jak zarejestrować spółkę akcyjną w KRS instrukcję wypełniania wniosków elektronicznych w PRS. Rejestracja w ZUS i zgłoszenie do ubezpieczeń Przy rejestracji, spółka zostanie automatycznie zarejestrowana z ZUS jako płatnik składek na ubezpieczenie społeczne',\n",
" 'Nie trzeba wysyłać do ZUS dodatkowych dokumentów',\n",
" 'Przeczytaj, jak zarejestrować się w ZUS i zgłosić do ubezpieczeń',\n",
" 'Strona internetowa spółki Każda spółka akcyjna ma obowiązek prowadzenia własnej strony internetowej przeznaczonej do komunikacji z akcjonariuszami',\n",
" 'Na stronie internetowej powinny znaleźć się takie informacje jak: firma, siedziba i adres spółki, numer KRS, oznaczenie właściwego sądu rejestrowego, NIP oraz wysokość kapitału zakładowego',\n",
" 'Ponadto, na stronie powinny się znaleźć wszelkie ogłoszenia spółek wymagane przez prawo oraz statuty tych spółek',\n",
" 'Akcje i prawa z nich wynikające Przez akcje należy rozumieć: ogół praw i obowiązków akcjonariusza wobec spółki akcyjnej wynikających z nabycia przez niego udziału w tej spółce papier wartościowy, czyli dokument potwierdzający prawa akcjonariusza',\n",
" 'Wspólnik spółki akcyjnej otrzymuje akcje za wkłady wnoszone do spółki',\n",
" 'Akcje mogą być obejmowane za wkłady pieniężne lub niepieniężne',\n",
" 'Wkład pieniężny to określona kwota przeniesiona na spółkę',\n",
" 'Wkładami niepieniężnymi (',\n",
" 'aporty',\n",
" ') są wszelkie wartości majątkowe wnoszone do spółki, które nie są wyrażone w pieniądzu',\n",
" 'Jako aport mogą być wnoszone: rzeczy ruchome, nieruchomości, użytkowanie wieczyste, ograniczone prawa rzeczowe, wierzytelności, udziały w spółkach i inne prawa majątkowe',\n",
" 'Uwaga',\n",
" 'Aportem nie mogą być prawa niezbywalne, na przykład użytkowanie',\n",
" 'Do zawiązania spółki akcyjnej konieczne jest: objęcie całości akcji, czyli zobowiązanie się do wniesienia określonych wkładów pokrycie ¼ akcji obejmowanych za wkłady pieniężne przed zarejestrowaniem spółki',\n",
" 'Pozostała część wkładów może być wniesiona po zarejestrowaniu spółki',\n",
" 'Natomiast wkłady niepieniężne należy wnieść przed upływem roku od dnia rejestracji spółki',\n",
" 'Z posiadaniem akcji w spółce akcyjnej wiąże się szereg uprawnień, które przysługują akcjonariuszowi',\n",
" 'Wśród tych uprawnień kluczowe są uprawnienia majątkowe i korporacyjne',\n",
" 'Do uprawnień majątkowych wynikających z akcji należą: udział w zysku spółki (',\n",
" 'prawo do dywidendy',\n",
" ') możliwość poboru akcji nowej emisji udział w masie likwidacyjnej spółki',\n",
" 'Do uprawnień korporacyjnych wynikających z akcji należą: prawo do uczestniczenia na walnym zgromadzeniu prawo do głosu na walnym zgromadzeniu prawo do informacji',\n",
" 'Podstawowym podziałem akcji w spółce akcyjnej jest podział na akcje imienne i akcje na okaziciela',\n",
" 'Podział akcji na akcje imienne oraz akcje na okaziciela nie jest podziałem na akcje różnego rodzaju, gdyż akcje imienne ucieleśniają takie same prawa pod względem, jak akcje na okaziciela',\n",
" 'Podział akcji ze względu na treść prawa z nich wynikającego, to podział na akcje zwykłe i akcje uprzywilejowane',\n",
" 'Uwaga',\n",
" 'Statut spółki powinien określać liczbę akcji zwykłych i uprzywilejowanych wraz z opisaniem związanych z nimi uprawnień',\n",
" 'Uprzywilejowanie akcji powoduje zwiększenie zakresu uprawnień w porównaniu z zakresem uprawnień akcji zwykłego rodzaju',\n",
" 'Uprzywilejowanie to może dotyczyć zarówno uprawnień majątkowych, jak i uprawnień korporacyjnych',\n",
" 'Kapitał zakładowy spółki akcyjnej Kapitał zakładowy stanowi warunek powstania i istnienia każdej spółki akcyjnej',\n",
" 'Jest to suma udziałów (',\n",
" 'akcji',\n",
" ') występujących w spółce',\n",
" 'Wszyscy wspólnicy spółki akcyjnej muszą wnieść wkłady do spółki, rozumiane jako określone wartości majątkowe, które zostają przeznaczone na pokrycie całości kapitału zakładowego',\n",
" 'Wysokość kapitału zakładowego powinna być ustalona w statucie spółki',\n",
" 'Dzięki wyodrębnieniu i pokryciu kapitału zakładowego akcjonariusze są wolni od odpowiedzialności za zobowiązania spółki',\n",
" 'Kapitał zakładowy podzielony jest na akcje o równej wartości nominalnej',\n",
" 'W praktyce oznacza to, że żadna spółka akcyjna nie może powstać bez zebrania kapitału zakładowego w wysokości wskazanej w statucie',\n",
" 'Wysokość kapitału zakładowego musi być wyrażona w walucie polskiej',\n",
" 'Uwaga',\n",
" 'Minimalna wysokość kapitału zakładowego spółki akcyjnej wynosi 100 tys. zł, a minimalna wartość jednej akcji wynosi 1 grosz',\n",
" 'Kapitał zakładowy w spółce akcyjnej realizuje trzy zasadnicze funkcje: funkcję prawną funkcję gospodarczą funkcję gwarancyjną',\n",
" 'Funkcja prawna kapitału zakładowego polega na określeniu wspólników (',\n",
" 'akcjonariuszy',\n",
" ') spółki w jej strukturze - kapitał zakładowy jest podstawą uczestniczenia każdego akcjonariusza w spółce',\n",
" 'Oznacza to, że akcjonariuszem spółki akcyjnej może zostać osoba, która ma swój udział w jej kapitale zakładowym',\n",
" 'Funkcja gospodarcza kapitału zakładowego spółki akcyjnej oznacza, że spółka dysponuje odpowiednimi środkami materialnymi, które pozwalają jej na podjęcie i rozwijanie działalności gospodarczej',\n",
" 'Ponadto, kapitał zakładowy pozwala na finansowanie funkcjonowania spółki, co przejawia się na przykład - w uzyskaniu zdolności kredytowej',\n",
" 'Funkcja gwarancyjna kapitału zakładowego spółki akcyjnej oznacza, że jego wysokość pozwala na ocenę pozycji spółki przez jej kontrahentów',\n",
" 'Organy spółki akcyjnej Każda spółka akcyjna musi mieć swoje organy',\n",
" 'Do obowiązkowych i zarazem najważniejszych organów należy zarząd, walne zgromadzenie akcjonariuszy oraz rada nadzorcza',\n",
" 'Ustanowienie pierwszych organów następuje w aktach notarialnych, w których akcjonariusze wyrażają zgodę na zawiązanie spółki, treść statutu oraz objęcie akcji',\n",
" 'Statut spółki albo późniejsza uchwała zarządu może wprowadzać podział kompetencji pomiędzy poszczególnymi członkami zarządu',\n",
" 'Liczba członków zarządu powinna być ustalona w statucie spółki',\n",
" 'Zarząd w spółce akcyjnej pełni dwie najważniejsze kompetencje: reprezentuje spółkę w stosunkach zewnętrznych prowadzi sprawy spółki',\n",
" 'Reprezentacja spółki przez zarząd polega na dokonywaniu i przyjmowaniu czynności prawnych za spółkę w stosunkach z osobami trzecimi',\n",
" 'Co do zasady każdy członek zarządu ma prawo reprezentować spółkę',\n",
" 'Poza zarządem spółkę mogą reprezentować inne osoby: kurator, syndyk masy upadłości, likwidator, a także pełnomocnicy oraz prokurenci',\n",
" 'Uwaga',\n",
" 'Działania polegające na dokonywaniu czynności prawnych przez zarząd są dokonywane za spółkę, a czynności dokonywane przez inne osoby są czynnościami dokonywanymi w imieniu spółki',\n",
" 'Członków zarządu w spółce akcyjnej powołuje i odwołuje rada nadzorcza, o ile statut spółki nie stanowi inaczej',\n",
" 'Zarząd może być jednoosobowy lub składać się z wielu członków',\n",
" 'Mogą to być osoby wybrane spośród akcjonariuszy lub spoza ich grona',\n",
" 'Funkcja członka zarządu może być pełniona za wynagrodzeniem lub nieodpłatnie',\n",
" 'Oprócz zarządu w każdej spółce akcyjnej, bez względu na wysokość kapitału zakładowego, czy liczbę akcjonariuszy, musi być ustanowiona rada nadzorcza',\n",
" 'Rada nadzorcza w spółce akcyjnej sprawuje nadzór nad działalnością spółki',\n",
" 'Rada składa się co najmniej z trzech członków, powoływanych i odwoływanych przez walne zgromadzenie akcjonariuszy, o ile statut spółki nie stanowi inaczej',\n",
" 'Ostatnim obligatoryjnym organem i zarazem stanowiącym w najważniejszych sprawach spółki akcyjnej jest walne zgromadzenie akcjonariuszy',\n",
" 'Walne zgromadzenie składa się ze wszystkich akcjonariuszy, którzy wspólnie decydują o sprawach strategicznych dla spółki',\n",
" 'Do podstawowych i najważniejszych kompetencji walnego zgromadzenia należy podejmowanie uchwał odnośnie do: rozpatrzenia i zatwierdzenia sprawozdania zarządu z działalności spółki udzielenia absolutorium członkom organów spółki z wykonania przez nich obowiązków nabycia i zbycia nieruchomości, użytkowania wieczystego lub udziału w nieruchomości decyzji co do dalszego istnienia spółki zmiany statutu spółki',\n",
" 'Odpowiedzialność w spółce akcyjnej Spółka akcyjna odpowiada całym swoim majątkiem za zobowiązania, które ja obciążają',\n",
" 'Zasadą jest, że w przypadku spółki akcyjnej nie ma odpowiedzialności po stronie akcjonariuszy (',\n",
" 'wyjątek spółka akcyjna w organizacji',\n",
" ')',\n",
" 'Akcjonariusze nie odpowiadają za zobowiązania spółki',\n",
" 'Akcjonariusz w praktyce ryzykuje jedynie utratą wniesionego wkładu',\n",
" 'Podatki i księgowość w spółce akcyjnej Spółka akcyjna jest podatnikiem VAT. Podatek dochodowy od osób prawnych (',\n",
" 'CIT',\n",
" ') płacony jest przez samą spółkę akcyjną od dochodów osiągniętych w danym roku podatkowym',\n",
" 'Ponadto akcjonariusze spółki płacą podatek (',\n",
" '19%',\n",
" ') od wypłacanych im dywidend i innych dochodów pochodzących z udziału w zyskach osób prawnych (',\n",
" 'na przykład dochód z umorzenia udziałów',\n",
" ')',\n",
" 'W spółce akcyjnej wymagane jest prowadzenie pełnej księgowości, publikowanie rocznych raportów finansowych oraz dokonywanie audytu',\n",
" 'Przeczytaj: więcej o podatku CIT kto i kiedy musi składać sprawozdania finansowe',\n",
" 'Rozwiązanie spółki Rozwiązanie spółki polega na tym, że wspólników przestaje wiązać dążenie do osiągnięcia wspólnego celu, jakim jest prowadzenie przedsiębiorstwa',\n",
" 'Po podjęciu decyzji o rozwiązaniu spółki celem wspólników powinno być zakończenie i podsumowanie prowadzonej działalności oraz rozliczenie zysków i strat poniesionych przez spółkę',\n",
" 'Przeczytaj więcej o rozwiązaniu i likwidacji spółek wpisanych do KRS. Powiązane treści Rozwiązanie i likwidacja spółek wpisanych do KRS Zakładanie spółki handlowej Podstawa prawna Art. 1, 4, 12, 301-490 Ustawa z dnia 15 września 2000 r',\n",
" 'Kodeks spółek handlowych',\n",
" 'Art. 1, 4a pkt 18, 19, 21, 7, 7b, 8-9, 12 Ustawa z dnia 15 lutego 1992 r. o podatku dochodowym od osób prawnych',\n",
" 'Art. 19, 36, 38 Ustawa z dnia 20 sierpnia 1997 r. o Krajowym Rejestrze Sądowym',\n",
" 'Ustawa z dnia 13 października 1998 r. o systemie ubezpieczeń społecznych',\n",
" 'Czy ta strona była przydatna? × Wyślij Metryka Opublikowano 27.06.2021 Zaktualizowano 22.09.2021 ID artykułu 00169 gov.pl / Mapa Biznes.gov.pl Centrum pomocy Punkty kontaktowe UE O nas Deklaracja dostępności Polityka prywatności Uwagi prawne Portal nadzorowany jest przez Ministerstwo Rozwoju i Technologii',\n",
" 'Partnerzy projektu: Sieć Badawcza Łukasiewicz - Poznański Instytut Technologiczny, Krajowa Izba Gospodarcza',\n",
" 'Projekt jest współfinansowany z Programu Polska Cyfrowa ze środków Unii Europejskiej z Europejskiego Funduszu Rozwoju Regionalnego i jest kontynuacją projektu pt.: \"Centralna Ewidencja i Informacja o Działalności Gospodarczej\" finansowanego z Programu Innowacyjna Gospodarka oraz projektu \"Uproszczenie i elektronizacja procedur\" finansowanego z Programu Kapitał Ludzki',\n",
" 'Artykuły zamieszczone w serwisie GOV.PL, w których nie podajemy żadnych dodatkowych informacji na temat praw autorskich, należą do informacji publicznych i udostępniamy je bezpłatnie',\n",
" 'Korzystanie z nich, niezależnie od celu i sposobu korzystania, nie wymaga zgody Ministerstwa',\n",
" 'Dostępne są w ramach licencji Creative Commons Uznanie Autorstwa 3.0 Polska',\n",
" 'Serwis Biznes.gov.pl używa plików cookies',\n",
" 'Kontynuując przeglądanie naszej witryny bez zmiany ustawień przeglądarki, wyrażasz zgodę na użycie plików cookie',\n",
" 'Zawsze możesz zmienić ustawienia przeglądarki i zablokować te pliki. × Zadaj pytanie Na wskazany w formularzu adres e-mail zostanie wysłane potwierdzenie zgłoszenia, informacja o zmianie statusu oraz odpowiedź',\n",
" 'Maksymalny termin odpowiedzi wynosi 7 dni kalendarzowych, 14 dni kalendarzowych w przypadku spraw wymagających konsultacji z innymi urzędami Pokaż więcej',\n",
" 'Formularz zapytania urzędowego jest częścią polskiego Pojedynczego Punktu Kontaktowego www.biznes.gov.pl',\n",
" 'Szczegółowy zakres zadań realizowanych przez Punkt Kontaktowy reguluje dział III ustawy o Centralnej Ewidencji i Informacji o Działalności Gospodarczej i Punktu Informacji dla Przedsiębiorcy',\n",
" 'Więcej informacji znajdziesz na stronie Uwagi Prawne',\n",
" 'Punkt Kontaktowy nie prowadzi doradztwa w indywidualnych sprawach',\n",
" 'Zgłaszający Wybierz Przedsiębiorca Obywatel Urzędnik E-mail Temat Wybierz prowadzenie firmy w Polsce prowadzenie firmy w Unii Europejskiej złożenie wniosku w CEIDG (',\n",
" 'założenie, zmiana, zawieszenie, wznowienie, zakończenie',\n",
" ') spory pomiędzy przedsiębiorcami, konsumentami i urzędami prawa i obowiązki pracowników i pracodawców eDoręczenia awaria/błąd Biznes.gov.pl lub CEIDG wsparcie techniczne Aplikacja urzędnika CEIDG Integracja dla banków Treść Jeśli podasz więcej szczegółowych informacji, np',\n",
" 'NIP, numer sprawy, numer wniosku, itp. możesz liczyć na szybszą analizę zgłoszenia',\n",
" 'Minimum 10 znaków Dodaj załącznik (',\n",
" 'Jeśli zgłoszenie dotyczy kwestii technicznych, załącz do niego zrzut ekranu',\n",
" ') Wielkość załącznika nie może przekraczać 5MB. Dozwolone formaty plików: .jpg, .jpeg, .png, .bmp, .gif, .pdf, .doc, .docx, .odt, .xls, .xlsx Wskaż plik dodaj kolejny załącznik Wyślij Wybierz ']"
]
},
2024-05-30 16:41:12 +02:00
"execution_count": 6,
2024-05-30 16:26:42 +02:00
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sentence_split_enhanced(get_text(\"https://www.biznes.gov.pl/pl/portal/00169\")) #podsatwowe info o spółce akcyjnej z portalu rządowego"
2024-04-13 08:20:53 +02:00
]
},
{
"cell_type": "markdown",
"id": "experimental-recipient",
"metadata": {},
"source": [
"Po podziale tekstu na segmenty po stronie źródłowej oraz docelowej, możemy przystąpić do kroku drugiego - dopasowania segmentów. Głównym wyzwaniem tego kroku jest fakt, iż po stronie źródłowej może być inna liczba segmentów, niż po stronie docelowej. Takie rozbieżności są bardzo częste, a wynikają między innymi z:\n",
"* tłumaczenia jednego zdania źródłowego przy użyciu więcej niż jednego zdania\n",
"* tłumaczenia więcej niż jednego zdania źródłowego przy użyciu jednego zdania\n",
"* pominięcia zdania podczas tłumaczenia\n",
"* rozbieżności pomiędzy wersjami tekstu źródłowego i docelowego (np. tekst źródłowy mógł być modyfikowany po przetłumaczeniu i tłumaczenie nie zostało zaktualizowane)\n",
"* przetłumaczenia tekstu źródłowego tylko częściowo"
]
},
{
"cell_type": "markdown",
"id": "australian-hundred",
"metadata": {},
"source": [
"Problemy te rozwiązwyane są na różne sposoby. Najpopularniejszym programem do przeprowadzania urównoleglania jest [Hunalign](https://github.com/danielvarga/hunalign). Wejściem do programu są dwa pliki, zawierające po jednym segmencie w linii. Wyjściem - plik urównoleglony w wewnętrznym formacie hunaligna."
]
},
{
"cell_type": "markdown",
"id": "russian-chambers",
"metadata": {},
"source": [
"### Ćwiczenie 3: Odnajdź dowolną stronę, która jest dostępna w wielu językach. Pobierz z tej strony tekst oryginalny (tylko ze strony głównej) oraz przetłumaczony na dowolny inny język. Przy użyciu Pythona przygotuj pliki dla Hunaligna i uruchom go."
]
},
{
"cell_type": "markdown",
"id": "controlled-pacific",
"metadata": {},
"source": [
"Wyjściem z Hunaligna jest plik w specjalnym formacie Hunaligna. Problem jednak w tym, że niestety nie można go w prosty sposób zaimportować do jakiegokolwiek narzędzia typu CAT. Potrzebna jest konwersja do któregoś z bardziej popularnych formatów, np. XLIFF."
]
},
{
"cell_type": "markdown",
"id": "divided-chain",
"metadata": {},
"source": [
"XLIFF jest formatem do przechowywania pamięci tłumaczeń, który opiera się na XML-u. Przykładowy plik XLIFF wygląda następująco:"
]
},
{
"cell_type": "raw",
"id": "appropriate-timber",
"metadata": {},
"source": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<xliff xmlns=\"urn:oasis:names:tc:xliff:document:1.2\" version=\"1.2\">\n",
" <file datatype=\"plaintext\" original=\"self\" source-language=\"en\" target-language=\"es\">\n",
" <header>\n",
" <sxmd:metadata xmlns:sxmd=\"urn:x-sap:mlt:xliff12:metadata:1.0\" xmlns=\"urn:x-sap:mlt:tsmetadata:1.0\">\n",
" <object-name>sample</object-name>\n",
" <collection>KWT</collection>\n",
" <domain>KWT</domain>\n",
" <developer>123</developer>\n",
" <description>sample XLIFF file</description>\n",
" </sxmd:metadata>\n",
" </header>\n",
" <body>\n",
" <trans-unit>\n",
" <source>Hello world!</source>\n",
" <target>Hola mundo!</target>\n",
" </trans-unit>\n",
" <trans-unit>\n",
" <source>File</source>\n",
" <target>Archivo</target>\n",
" </trans-unit>\n",
" <trans-unit>\n",
" <source>New</source>\n",
" <target>Nuevo</target>\n",
" </trans-unit>\n",
" <trans-unit>\n",
" <source>Exit</source>\n",
" <target>Salir</target>\n",
" </trans-unit>\n",
" </body>\n",
" </file>\n",
"</xliff>"
]
},
{
"cell_type": "markdown",
"id": "falling-greenhouse",
"metadata": {},
"source": [
"### Ćwiczenie 4: Napisz konwerter formatu hunaligna na XLIFF."
]
},
{
"cell_type": "code",
2024-05-30 16:41:12 +02:00
"execution_count": 16,
2024-04-13 08:20:53 +02:00
"id": "remarkable-pillow",
"metadata": {},
2024-05-30 16:26:42 +02:00
"outputs": [
{
2024-05-30 16:41:12 +02:00
"name": "stdout",
"output_type": "stream",
"text": [
"Dostęp do zawartości strony (kliknąć na \"Wejście\")\tAccess to page content (press \"Enter\")\tpl\n",
"\n",
"Bezpośredni dostęp do menu z językami (wciśnij „Enter”)\tDirect access to language menu (press \"Enter\")\tpl\n",
"\n",
"Bezpośredni dostęp do menu wyszukiwania (wciśnij „Enter”)\tDirect access to search menu (press \"Enter\")\tpl\n",
"\n",
"Zmiana języka przeglądania BG - български ES - español CS - čeština DA - dansk DE - Deutsch ET - eesti keel EL - ελληνικά EN - English FR - français GA - Gaeilge HR - hrvatski IT - italiano LV - latviešu valoda LT - lietuvių kalba HU - magyar MT - Malti NL - Nederlands PL - polski PT - português RO - română SK - slovenčina SL - slovenščina FI - suomi SV - svenska\tChange the navigation language BG - български ES - español CS - čeština DA - dansk DE - Deutsch ET - eesti keel EL - ελληνικά EN - English FR - français GA - Gaeilge HR - hrvatski IT - italiano LV - latviešu valoda LT - lietuvių kalba HU - magyar MT - Malti NL - Nederlands PL - polski PT - português RO - română SK - slovenčina SL - slovenščina FI - suomi SV - svenska\tpl\n",
"\n",
"Zmiana języka przeglądania\tChange the navigation language\tpl\n",
"\n",
"PL - polski\tEN - English\tpl\n",
"\n",
"BG - български\tBG - български\tpl\n",
"\n",
"ES - español\tES - español\tpl\n",
"\n",
"CS - čeština\tCS - čeština\tpl\n",
"\n",
"DA - dansk\tDA - dansk\tpl\n",
"\n",
"DE - Deutsch\tDE - Deutsch\tpl\n",
"\n",
"ET - eesti keel\tET - eesti keel\tpl\n",
"\n",
"EL - ελληνικά EN - English\tEL - ελληνικά EN - English\tpl\n",
"\n",
"FR - français\tFR - français\tpl\n",
"\n",
"GA - Gaeilge\tGA - Gaeilge\tpl\n",
"\n",
"HR - hrvatski\tHR - hrvatski\tpl\n",
"\n",
"IT - italiano\tIT - italiano\tpl\n",
"\n",
"LV - latviešu valoda\tLV - latviešu valoda\tpl\n",
"\n",
"LT - lietuvių kalba\tLT - lietuvių kalba\tpl\n",
"\n",
"HU - magyar\tHU - magyar\tpl\n",
"\n",
"MT - Malti\tMT - Malti\tpl\n",
"\n",
"NL - Nederlands PL - polski\tNL - Nederlands PL - polski\tpl\n",
"\n",
"PT - português\tPT - português\tpl\n",
"\n",
"RO - română\tRO - română\tpl\n",
"\n",
"SK - slovenčina\tSK - slovenčina\tpl\n",
"\n",
"SL - slovenščina\tSL - slovenščina\tpl\n",
"\n",
"FI - suomi\tFI - suomi\tpl\n",
"\n",
"SV - svenska\tSV - svenska\tpl\n",
"\n",
"Zobacz inne strony internetowe Aktualności Tematy Posłowie do PE O Parlamencie Posiedzenia plenarne Komisje parlamentarne Delegacje Wybory Inne strony internetowe Media Strona przewodniczącego Sekretariat Generalny Think tank EP Newshub Do Waszych usług Wizyty Legislative train Zamówienia i dotacje Rejestr Portal otwartych danych Biura kontaktowe\tView other websites News Topics MEPs About Parliament Plenary Committees Delegations Elections Other websites Multimedia centre Presidents website Secretariat-General Think tank EP Newshub At your service Visits Legislative train Contracts and Grants Register Open data portal Liaison offices\tpl\n",
"\n",
"O Parlamencie Parlament Europejski\tAbout Parliament European Parliament\tpl\n",
"\n",
"Menu Strona główna Uprawnienia i procedury Strona główna Uprawnienia legislacyjne Uprawnienia budżetowe Uprawnienia kontrolne Parlamenty krajowe Traktat z Lizbony\tMenu Home Powers and procedures Home Legislative powers Budgetary powers Supervisory powers National parliaments The Lisbon Treaty\tpl\n",
"\n",
"Organizacja i praca Strona główna Organizacja Wszystko o sesjach plenarnych Budżet Parlamentu Wielojęzyczność w Parlamencie Europejskim Sekretariat Generalny Ślad ekologiczny\tOrganisation and rules Home Organisation How Plenary works Parliaments budget Multilingualism Secretariat Ecological footprint\tpl\n",
"\n",
"Demokracja i prawa człowieka Strona główna Prawa podstawowe w UE Prawa człowieka poza UE Demokracja w skali światowej\tDemocracy and human rights Home Fundamental rights in the EU Human rights outside the EU Global democracy\tpl\n",
"\n",
"Historia Strona główna PE i traktaty Archiwa Historyczne\tIn the past Home The Parliament and the treaties Historical archives\tpl\n",
"\n",
"Tekst łatwy do czytania\tEasy-to-read\tpl\n",
"\n",
"Dostęp do pola wyszukiwania Rozpocznij wyszukiwanie\tAccess to search field Launch the search\tpl\n",
"\n",
"Parlament Europejski\tEuropean Parliament\tpl\n",
"\n",
"Demokracja i prawa człowieka\tDemocracy and human rights\tpl\n",
"\n",
"Parlament Europejski zyskał sobie opinię zaangażowanego obrońcy praw podstawowych i demokracji.\tThe European Parliament has earned a reputation as a dedicated sponsor of peoples basic rights and of democracy.\tpl\n",
"\n",
"W jedynej instytucji UE, której członkowie są wyłaniani w wyborach bezpośrednich, posłowie prowadzą walkę z nowymi i trwającymi od dawna atakami na podstawowe wolności.\tWithin the EUs only directly-elected institution, MEPs fight against new and old attacks on essential liberties.\tpl\n",
"\n",
"Ochrona praw podstawowych w Unii\tProtecting fundamental rights in the EU\tpl\n",
"\n",
"Prawa podstawowe przysługują wszystkim ludziom w UE bez względu na ich status lub pochodzenie.\tFundamental rights apply to all people in the EU, no matter their status or origin.\tpl\n",
"\n",
"Niektóre z tych swobód są równie stare jak Europa: prawo do życia i wolności, swoboda myśli i wypowiedzi.\tSome of these freedoms are as old as Europe: life and liberty, thought and expression.\tpl\n",
"\n",
"Inne trzeba jednak ponownie zdefiniować, by iść z duchem czasu.\tBut others have had to be redefined to keep pace with the times.\tpl\n",
"\n",
"Ochrona danych osobowych lub zakaz klonowania ludzi nie były przedmiotem troski pierwszych posłów do PE wybranych blisko czterdzieści lat temu.\tProtecting personal data or prohibiting human cloning were far from the minds of the first elected MEPs, some four decades ago.\tpl\n",
"\n",
"Przejdź do tej strony : Ochrona praw podstawowych w Unii\tGo to the page : Protecting fundamental rights in the EU\tpl\n",
"\n",
"Obrona praw człowieka poza UE\tDefending human rights beyond the EU\tpl\n",
"\n",
"Parlament Europejski uważa, że podstawowe prawa człowieka obowiązują również poza granicami UE.\tThe European Parliament does not believe that peoples basic rights end at the EUs borders.\tpl\n",
"\n",
"Posłowie do PE regularnie zabierają głos, indywidualnie lub wspólnie, w sprawie kwestii związanych z prawami człowieka w państwach spoza UE.\tMEPs regularly speak out individually and in unison about human rights issues in non-EU countries.\tpl\n",
"\n",
"Z uwagi na to, że wspomniane prawa są uznawane za powszechne, reakcja jest taka sama, niezależnie od tego, czy do naruszenia dochodzi w Mjanmie/Birmie, oddalonej o 8000 km, czy na Białorusi, która graniczy z UE.\tBecause these rights are considered universal, the response is the same whether the violation takes place in Myanmar/Burma, some 8 000 kilometres away, or in Belarus, which borders on the Union.\tpl\n",
"\n",
"Walka o prawa człowieka przywiodła także do Parlamentu Europejskiego wielu wybitnych obrońców tych praw.\tThe battle for human rights has also brought many prominent defenders to the European Parliament.\tpl\n",
"\n",
"Malala Yousafzai, pakistańska działaczka walcząca o prawo dzieci do nauki, jazydzkie kobiety więzione przez Państwo Islamskie w Iraku, lekarz z Demokratycznej Republiki Konga, więźniowie polityczni z Ameryki Łacińskiej: wszyscy zabrali głos w Parlamencie.\tMalala Yousafzai, the Pakistani campaigner for childrens education, Yazidi women who had been prisoners of the Islamic State in Iraq, a doctor from the Democratic Republic of the Congo, political prisoners from Latin America: all have found a voice on the European Parliaments stage.\tpl\n",
"\n",
"Przejdź do tej strony : Obrona praw człowieka poza UE\tGo to the page : Defending human rights beyond the EU\tpl\n",
"\n",
"Wspieranie demokracji na całym świecie\tSupporting democracy around the globe\tpl\n",
"\n",
"Wspieranie demokracji jest kluczowym elementem tych działań wyrażonym w Powszechnej deklaracji praw człowieka: „Wola ludu jest podstawą władzy rządu.”\tSustaining democracy is a key element of this effort, spelled out in the Universal Declaration of Human Rights: “ The will of the people shall be the basis of the authority of government .”\tpl\n",
"\n",
"Posłowie do PE bronią systemów demokratycznych na całym świecie.\tMEPs defend democratic systems around the globe.\tpl\n",
"\n",
"Niektórzy z nich podróżują w odległe regiony, by obserwować wybory, prowadzić mediacje w konfliktach i wspierać nowo powstałe parlamenty.\tSome have travelled far to observe elections, mediate in conflicts and support fledgling parliaments.\tpl\n",
"\n",
"Akty założycielskie UE wymagają, by Unia jako całość broniła zasad demokratycznych w ramach swojej polityki zagranicznej.\tThe EUs own founding texts require that the Union as a whole defends democratic principles in its foreign affairs.\tpl\n",
"\n",
"Jednak starania te są jeszcze bliższe Parlamentowi Europejskiemu: dla posłów do PE, którzy uczestniczyli w wyborach i kampaniach, demokracja jest sprawą osobistą.\tBut in the European Parliament, this effort strikes closer to home: for MEPs, who have experienced elections and campaigns, democracy is a personal matter.\tpl\n",
"\n",
"Przejdź do tej strony : Wspieranie demokracji na całym świecie\tGo to the page : Supporting democracy around the globe\tpl\n",
"\n",
"Nagroda im. Sacharowa\tSakharov Prize\tpl\n",
"\n",
"Zapoznaj się z informacjami o laureatach nagrody im. Sacharowa przyznawanej od 1988 r. przez Parlament Europejski osobom, które wyróżniły się jako obrońcy praw człowieka.\tRead about the winners of the Parliament's Sakharov Prize, which has recongnised outstanding human rights defenders since 1988\tpl\n",
"\n",
"Przejdź do strony internetowej\tVisit the website\tpl\n",
"\n",
"Udostępnij tę stronę:\tShare this page:\tpl\n",
"\n",
"Udostępnij tę stronę Facebook (otwiera się w nowym oknie)\tShare this page on Facebook (opens in a new window)\tpl\n",
"\n",
"Udostępnij tę stronę Twitter (otwiera się w nowym oknie)\tShare this page on Twitter (opens in a new window)\tpl\n",
"\n",
"Udostępnij tę stronę LinkedIn (otwiera się w nowym oknie)\tShare this page on LinkedIn (opens in a new window)\tpl\n",
"\n",
"Zamów powiadomienia mailowe\tSign up for mail updates\tpl\n",
"\n",
"Footer\tFooter\tpl\n",
"\n",
"O Parlamencie\tAbout Parliament\tpl\n",
"\n",
"Pokaż menu: aktualności\tView menu: News\tpl\n",
"\n",
"Przewodniczący Parlamentu Europejskiego Sekretarz Generalny Parlamentu Europejskiego Wizyty Europejski Rzecznik Praw Obywatelskich Informacje o Unii Europejskiej\tThe President of the European Parliament Secretary-General of the European Parliament Visits European Ombudsman About the European Union\tpl\n",
"\n",
"Ukryj menu: Aktualności\tHide menu: News\tpl\n",
"\n",
"Parlament Europejski\tEuropean Parliament\tpl\n",
"\n",
"Pokaż menu: Parlament Europejski\tView menu: European Parliament\tpl\n",
"\n",
"Aktualności Tematy Posłowie do PE O Parlamencie Posiedzenia plenarne Komisje parlamentarne Delegacje Wybory\tNews Topics MEPs About Parliament Plenary Committees Delegations Elections\tpl\n",
"\n",
"Ukryj menu: Parlament Europejski\tHide menu: European Parliament\tpl\n",
"\n",
"Parlament w mediach społecznościowych\tThe Parliament on social media\tpl\n",
"\n",
"Sprawdź aktualności w Parlamencie Facebook (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie Twitter (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie Flickr (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie LinkedIn (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie YouTube (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie Instagram (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie Pinterest (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie Snapchat (otwiera się w nowym oknie) Sprawdź aktualności w Parlamencie Reddit (otwiera się w nowym oknie)\tCheck out Parliament on Facebook (opens in a new window) Check out Parliament on Twitter (opens in a new window) Check out Parliament on Flickr (opens in a new window) Check out Parliament on LinkedIn (opens in a new window) Check out Parliament on YouTube (opens in a new window) Check out Parliament on Instagram (opens in a new window) Check out Parliament on Pinterest (opens in a new window) Check out Parliament on Snapchat (opens in a new window) Check out Parliament on Reddit (opens in a new window)\tpl\n",
"\n",
"Linki do informacji\tInformation links\tpl\n",
"\n",
"Kontakt RSS Mapa witryny Informacja prawna Polityka ochrony prywatności Dostęp\tContact RSS Sitemap Legal notice Privacy policy Accessibility\tpl\n"
]
},
{
"ename": "UnicodeEncodeError",
"evalue": "'charmap' codec can't encode characters in position 1490-1498: character maps to <undefined>",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mUnicodeEncodeError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[1;32mIn[16], line 35\u001b[0m\n\u001b[0;32m 30\u001b[0m xml_file\u001b[38;5;241m.\u001b[39mwrite(text)\n\u001b[0;32m 33\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;241m0\u001b[39m\n\u001b[1;32m---> 35\u001b[0m \u001b[43mconvert2xliff\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43maligned_pl-en.txt\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mxliff_pl_en\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n",
"Cell \u001b[1;32mIn[16], line 30\u001b[0m, in \u001b[0;36mconvert2xliff\u001b[1;34m(hunalign_file_name, new_xliff_file_name)\u001b[0m\n\u001b[0;32m 25\u001b[0m text \u001b[38;5;241m+\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;124mr\u001b[39m\u001b[38;5;124m\"\"\"\u001b[39m\u001b[38;5;124m</body>\u001b[39m\n\u001b[0;32m 26\u001b[0m \u001b[38;5;124m </file>\u001b[39m\n\u001b[0;32m 27\u001b[0m \u001b[38;5;124m </xliff>\u001b[39m\u001b[38;5;124m\"\"\"\u001b[39m\n\u001b[0;32m 29\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mopen\u001b[39m(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124moutput_xml_file.xml\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mw\u001b[39m\u001b[38;5;124m'\u001b[39m) \u001b[38;5;28;01mas\u001b[39;00m xml_file:\n\u001b[1;32m---> 30\u001b[0m \u001b[43mxml_file\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mwrite\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtext\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 33\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;241m0\u001b[39m\n",
"File \u001b[1;32mc:\\Users\\osins\\AppData\\Local\\Programs\\Python\\Python312\\Lib\\encodings\\cp1250.py:19\u001b[0m, in \u001b[0;36mIncrementalEncoder.encode\u001b[1;34m(self, input, final)\u001b[0m\n\u001b[0;32m 18\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mencode\u001b[39m(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;28minput\u001b[39m, final\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mFalse\u001b[39;00m):\n\u001b[1;32m---> 19\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mcodecs\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcharmap_encode\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43minput\u001b[39;49m\u001b[43m,\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43merrors\u001b[49m\u001b[43m,\u001b[49m\u001b[43mencoding_table\u001b[49m\u001b[43m)\u001b[49m[\u001b[38;5;241m0\u001b[39m]\n",
"\u001b[1;31mUnicodeEncodeError\u001b[0m: 'charmap' codec can't encode characters in position 1490-1498: character maps to <undefined>"
]
2024-05-30 16:26:42 +02:00
}
],
2024-04-13 08:20:53 +02:00
"source": [
2024-05-30 16:26:42 +02:00
"#mi osobiście dedykowana aplikacja zwracała jako wynik plik .txt + umożliwiała wybranie formatu który jest możlwiy do otworzenia w CAT\n",
"# pracuję na zestawie danych \n",
"# pl -> https://www.europarl.europa.eu/about-parliament/en/democracy-and-human-rights\n",
"# en -> https://www.europarl.europa.eu/about-parliament/en/democracy-and-human-rights\n",
"# plik wygenerowany: aligned_pl-en.txt\n",
"def convert2xliff(hunalign_file_name,new_xliff_file_name):\n",
" text = \"\"\"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
" <xliff xmlns=\"urn:oasis:names:tc:xliff:document:1.2\" version=\"1.2\">\n",
" <file datatype=\"plaintext\" original=\"self\" source-language=\"pl\" target-language=\"en\">\n",
" <header>\n",
" <sxmd:metadata xmlns:sxmd=\"urn:x-sap:mlt:xliff12:metadata:1.0\" xmlns=\"urn:x-sap:mlt:tsmetadata:1.0\">\n",
" <developer>Krystian Osinski</developer>\n",
" </sxmd:metadata>\n",
" </header>\n",
" <body>\"\"\"\n",
2024-05-30 16:41:12 +02:00
" with open(hunalign_file_name, 'r', encoding='utf-8') as file:\n",
2024-05-30 16:26:42 +02:00
" lines = file.readlines()\n",
" for line in lines:\n",
" source, target, pl = line.strip().split('\\t')\n",
" text += f\"\"\"<trans-unit>\n",
" <source>{source}</source>\n",
" <target>{target}</target>\n",
" </trans-unit>\"\"\"\n",
" text += r\"\"\"</body>\n",
" </file>\n",
" </xliff>\"\"\"\n",
" \n",
2024-05-30 16:41:12 +02:00
" with open('output_xml_file.xml', 'w', encoding='utf-8') as xml_file:\n",
2024-05-30 16:26:42 +02:00
" xml_file.write(text)\n",
" \n",
" \n",
" return 0\n",
"\n",
"convert2xliff(\"aligned_pl-en.txt\",\"xliff_pl_en\")"
2024-04-13 08:20:53 +02:00
]
}
],
"metadata": {
"author": "Rafał Jaworski",
"email": "rjawor@amu.edu.pl",
"kernelspec": {
2024-05-30 16:26:42 +02:00
"display_name": "Python 3 (ipykernel)",
2024-04-13 08:20:53 +02:00
"language": "python",
"name": "python3"
},
2024-05-30 16:26:42 +02:00
"lang": "pl",
2024-04-13 08:20:53 +02:00
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
2024-05-30 16:41:12 +02:00
"version": "3.12.1"
2024-05-30 16:26:42 +02:00
},
"subtitle": "11. Urównoleglanie",
"title": "Komputerowe wspomaganie tłumaczenia",
"year": "2021"
2024-04-13 08:20:53 +02:00
},
"nbformat": 4,
"nbformat_minor": 5
}