Compare commits
7 Commits
3fa74f6ed9
...
v0.4b
| Author | SHA1 | Date | |
|---|---|---|---|
| 56a509a5e6 | |||
| 84a38d0cb3 | |||
| 8ec7e5e835 | |||
| 4f05729782 | |||
| d7321a5041 | |||
| a29aa4da91 | |||
| 170959e529 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,4 @@
|
||||
/.DS_Store
|
||||
/.project
|
||||
/.pydevproject
|
||||
bananaSPLIT/build
|
||||
BIN
WinBuild/dist/bananaSPLIT.exe
vendored
BIN
WinBuild/dist/bananaSPLIT.exe
vendored
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,210 +0,0 @@
|
||||
('D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\dist\\bananaSPLIT.exe',
|
||||
True,
|
||||
False,
|
||||
False,
|
||||
'banana.ico',
|
||||
None,
|
||||
False,
|
||||
False,
|
||||
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1"><assemblyIdentity name="bananaSPLIT.exe" processorArchitecture="amd64" type="win32" version="1.0.0.0"/><dependency><dependentAssembly><assemblyIdentity language="*" name="Microsoft.Windows.Common-Controls" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" type="win32" version="6.0.0.0"/><compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"/></dependentAssembly></dependency><compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"><application><supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/><supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/><supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/><supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/><supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/></application></compatibility></assembly>',
|
||||
True,
|
||||
'bananaSPLIT.pkg',
|
||||
[('PYZ-00.pyz',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\PYZ-00.pyz',
|
||||
'PYZ'),
|
||||
('struct',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\localpycos\\struct.pyo',
|
||||
'PYMODULE'),
|
||||
('pyimod01_os_path',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyimod01_os_path.pyc',
|
||||
'PYMODULE'),
|
||||
('pyimod02_archive',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyimod02_archive.pyc',
|
||||
'PYMODULE'),
|
||||
('pyimod03_importers',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyimod03_importers.pyc',
|
||||
'PYMODULE'),
|
||||
('pyiboot01_bootstrap',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyiboot01_bootstrap.py',
|
||||
'PYSOURCE'),
|
||||
('main',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\main.py',
|
||||
'PYSOURCE'),
|
||||
('api-ms-win-crt-math-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-math-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('VCRUNTIME140.dll',
|
||||
'c:\\program files\\python37\\VCRUNTIME140.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-locale-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-locale-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-heap-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-heap-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-stdio-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-stdio-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-runtime-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-runtime-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('python37.dll', 'c:\\program files\\python37\\python37.dll', 'BINARY'),
|
||||
('ucrtbase.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\ucrtbase.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-convert-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-convert-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-string-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-string-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-environment-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-environment-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-conio-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-conio-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-filesystem-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-filesystem-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-time-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-time-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-process-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-process-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-file-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-file-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-sysinfo-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-sysinfo-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-file-l2-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-file-l2-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-namedpipe-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-namedpipe-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-interlocked-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-interlocked-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-processthreads-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-processthreads-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-console-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-console-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-heap-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-heap-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-file-l1-2-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-file-l1-2-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-memory-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-memory-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-synch-l1-2-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-synch-l1-2-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-errorhandling-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-errorhandling-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-libraryloader-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-libraryloader-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-processthreads-l1-1-1.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-processthreads-l1-1-1.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-util-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-util-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-localization-l1-2-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-localization-l1-2-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-handle-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-handle-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-string-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-string-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-processenvironment-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-processenvironment-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-synch-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-synch-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-rtlsupport-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-rtlsupport-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-profile-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-profile-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-debug-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-debug-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-timezone-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-timezone-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-datetime-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-datetime-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('_ssl', 'c:\\program files\\python37\\DLLs\\_ssl.pyd', 'EXTENSION'),
|
||||
('unicodedata',
|
||||
'c:\\program files\\python37\\DLLs\\unicodedata.pyd',
|
||||
'EXTENSION'),
|
||||
('pyexpat', 'c:\\program files\\python37\\DLLs\\pyexpat.pyd', 'EXTENSION'),
|
||||
('_hashlib', 'c:\\program files\\python37\\DLLs\\_hashlib.pyd', 'EXTENSION'),
|
||||
('select', 'c:\\program files\\python37\\DLLs\\select.pyd', 'EXTENSION'),
|
||||
('_bz2', 'c:\\program files\\python37\\DLLs\\_bz2.pyd', 'EXTENSION'),
|
||||
('_lzma', 'c:\\program files\\python37\\DLLs\\_lzma.pyd', 'EXTENSION'),
|
||||
('_socket', 'c:\\program files\\python37\\DLLs\\_socket.pyd', 'EXTENSION'),
|
||||
('_ctypes', 'c:\\program files\\python37\\DLLs\\_ctypes.pyd', 'EXTENSION'),
|
||||
('_contextvars',
|
||||
'c:\\program files\\python37\\DLLs\\_contextvars.pyd',
|
||||
'EXTENSION'),
|
||||
('_decimal', 'c:\\program files\\python37\\DLLs\\_decimal.pyd', 'EXTENSION'),
|
||||
('libssl-1_1-x64.dll',
|
||||
'c:\\program files\\python37\\DLLs\\libssl-1_1-x64.dll',
|
||||
'BINARY'),
|
||||
('libcrypto-1_1-x64.dll',
|
||||
'c:\\program files\\python37\\DLLs\\libcrypto-1_1-x64.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-utility-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-utility-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('text_unidecode\\data.bin',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\text_unidecode\\data.bin',
|
||||
'DATA'),
|
||||
('base_library.zip',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\base_library.zip',
|
||||
'DATA'),
|
||||
('bananaSPLIT.exe.manifest',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\bananaSPLIT.exe.exe.manifest',
|
||||
'BINARY'),
|
||||
('pyi-windows-manifest-filename bananaSPLIT.exe.manifest', '', 'OPTION')],
|
||||
[],
|
||||
False,
|
||||
False,
|
||||
1572446705,
|
||||
[('run.exe',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\bootloader\\Windows-64bit\\run.exe',
|
||||
'EXECUTABLE')])
|
||||
Binary file not shown.
@@ -1,202 +0,0 @@
|
||||
('D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\PKG-00.pkg',
|
||||
{'BINARY': 1,
|
||||
'DATA': 1,
|
||||
'EXECUTABLE': 1,
|
||||
'EXTENSION': 1,
|
||||
'PYMODULE': 1,
|
||||
'PYSOURCE': 1,
|
||||
'PYZ': 0},
|
||||
[('PYZ-00.pyz',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\PYZ-00.pyz',
|
||||
'PYZ'),
|
||||
('struct',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\localpycos\\struct.pyo',
|
||||
'PYMODULE'),
|
||||
('pyimod01_os_path',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyimod01_os_path.pyc',
|
||||
'PYMODULE'),
|
||||
('pyimod02_archive',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyimod02_archive.pyc',
|
||||
'PYMODULE'),
|
||||
('pyimod03_importers',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyimod03_importers.pyc',
|
||||
'PYMODULE'),
|
||||
('pyiboot01_bootstrap',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\PyInstaller\\loader\\pyiboot01_bootstrap.py',
|
||||
'PYSOURCE'),
|
||||
('main',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\main.py',
|
||||
'PYSOURCE'),
|
||||
('api-ms-win-crt-math-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-math-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('VCRUNTIME140.dll',
|
||||
'c:\\program files\\python37\\VCRUNTIME140.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-locale-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-locale-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-heap-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-heap-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-stdio-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-stdio-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-runtime-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-runtime-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('python37.dll', 'c:\\program files\\python37\\python37.dll', 'BINARY'),
|
||||
('ucrtbase.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\ucrtbase.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-convert-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-convert-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-string-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-string-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-environment-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-environment-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-conio-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-conio-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-filesystem-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-filesystem-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-time-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-time-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-process-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-process-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-file-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-file-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-sysinfo-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-sysinfo-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-file-l2-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-file-l2-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-namedpipe-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-namedpipe-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-interlocked-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-interlocked-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-processthreads-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-processthreads-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-console-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-console-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-heap-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-heap-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-file-l1-2-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-file-l1-2-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-memory-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-memory-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-synch-l1-2-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-synch-l1-2-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-errorhandling-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-errorhandling-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-libraryloader-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-libraryloader-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-processthreads-l1-1-1.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-processthreads-l1-1-1.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-util-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-util-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-localization-l1-2-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-localization-l1-2-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-handle-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-handle-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-string-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-string-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-processenvironment-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-processenvironment-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-synch-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-synch-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-rtlsupport-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-rtlsupport-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-profile-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-profile-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-debug-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-core-debug-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-timezone-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-timezone-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-core-datetime-l1-1-0.dll',
|
||||
'C:/Program '
|
||||
'Files/Java/jre1.8.0_231/bin\\api-ms-win-core-datetime-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('_ssl', 'c:\\program files\\python37\\DLLs\\_ssl.pyd', 'EXTENSION'),
|
||||
('unicodedata',
|
||||
'c:\\program files\\python37\\DLLs\\unicodedata.pyd',
|
||||
'EXTENSION'),
|
||||
('pyexpat', 'c:\\program files\\python37\\DLLs\\pyexpat.pyd', 'EXTENSION'),
|
||||
('_hashlib', 'c:\\program files\\python37\\DLLs\\_hashlib.pyd', 'EXTENSION'),
|
||||
('select', 'c:\\program files\\python37\\DLLs\\select.pyd', 'EXTENSION'),
|
||||
('_bz2', 'c:\\program files\\python37\\DLLs\\_bz2.pyd', 'EXTENSION'),
|
||||
('_lzma', 'c:\\program files\\python37\\DLLs\\_lzma.pyd', 'EXTENSION'),
|
||||
('_socket', 'c:\\program files\\python37\\DLLs\\_socket.pyd', 'EXTENSION'),
|
||||
('_ctypes', 'c:\\program files\\python37\\DLLs\\_ctypes.pyd', 'EXTENSION'),
|
||||
('_contextvars',
|
||||
'c:\\program files\\python37\\DLLs\\_contextvars.pyd',
|
||||
'EXTENSION'),
|
||||
('_decimal', 'c:\\program files\\python37\\DLLs\\_decimal.pyd', 'EXTENSION'),
|
||||
('libssl-1_1-x64.dll',
|
||||
'c:\\program files\\python37\\DLLs\\libssl-1_1-x64.dll',
|
||||
'BINARY'),
|
||||
('libcrypto-1_1-x64.dll',
|
||||
'c:\\program files\\python37\\DLLs\\libcrypto-1_1-x64.dll',
|
||||
'BINARY'),
|
||||
('api-ms-win-crt-utility-l1-1-0.dll',
|
||||
'C:/Program Files/Java/jre1.8.0_231/bin\\api-ms-win-crt-utility-l1-1-0.dll',
|
||||
'BINARY'),
|
||||
('text_unidecode\\data.bin',
|
||||
'C:\\Users\\Emanuele '
|
||||
'Trabattoni\\AppData\\Roaming\\Python\\Python37\\site-packages\\text_unidecode\\data.bin',
|
||||
'DATA'),
|
||||
('base_library.zip',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\base_library.zip',
|
||||
'DATA'),
|
||||
('bananaSPLIT.exe.manifest',
|
||||
'D:\\Emanuele\\Documenti\\workspace\\bananaSPLIT\\bananaSPLIT\\build\\bananaSPLIT.exe\\bananaSPLIT.exe.exe.manifest',
|
||||
'BINARY'),
|
||||
('pyi-windows-manifest-filename bananaSPLIT.exe.manifest', '', 'OPTION')],
|
||||
False,
|
||||
False,
|
||||
False)
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,19 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<assemblyIdentity name="bananaSPLIT.exe" processorArchitecture="amd64" type="win32" version="1.0.0.0"/>
|
||||
<dependency>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity language="*" name="Microsoft.Windows.Common-Controls" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" type="win32" version="6.0.0.0"/>
|
||||
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"/>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
|
||||
<application>
|
||||
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
|
||||
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
|
||||
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
|
||||
<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
|
||||
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
|
||||
</application>
|
||||
</compatibility>
|
||||
</assembly>
|
||||
Binary file not shown.
@@ -1,33 +0,0 @@
|
||||
|
||||
This file lists modules PyInstaller was not able to find. This does not
|
||||
necessarily mean this module is required for running you program. Python and
|
||||
Python 3rd-party packages include a lot of conditional or optional module. For
|
||||
example the module 'ntpath' only exists on Windows, whereas the module
|
||||
'posixpath' only exists on Posix systems.
|
||||
|
||||
Types if import:
|
||||
* top-level: imported at the top-level - look at these first
|
||||
* conditional: imported within an if-statement
|
||||
* delayed: imported from within a function
|
||||
* optional: imported within a try-except-statement
|
||||
|
||||
IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
|
||||
yourself tracking down the missing module. Thanks!
|
||||
|
||||
missing module named resource - imported by posix (top-level), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named posix - imported by os (conditional, optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named _posixsubprocess - imported by subprocess (conditional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named readline - imported by cmd (delayed, conditional, optional), code (delayed, conditional, optional), pdb (delayed, optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named _winreg - imported by platform (delayed, optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named _scproxy - imported by urllib.request (conditional)
|
||||
missing module named java - imported by platform (delayed), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named 'java.lang' - imported by platform (delayed, optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level), xml.sax._exceptions (conditional)
|
||||
missing module named vms_lib - imported by platform (delayed, conditional, optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named termios - imported by tty (top-level), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level), getpass (optional)
|
||||
missing module named grp - imported by shutil (optional), tarfile (optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named org - imported by pickle (optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level)
|
||||
missing module named pwd - imported by posixpath (delayed, conditional), shutil (optional), tarfile (optional), http.server (delayed, optional), webbrowser (delayed), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level), netrc (delayed, conditional), getpass (delayed)
|
||||
missing module named 'org.python' - imported by copy (optional), D:\Emanuele\Documenti\workspace\bananaSPLIT\bananaSPLIT\main.py (top-level), xml.sax (delayed, conditional)
|
||||
missing module named htmlentitydefs - imported by slugify.slugify (optional)
|
||||
File diff suppressed because it is too large
Load Diff
BIN
bananaSPLIT/dist/bananaSPLIT.exe
vendored
BIN
bananaSPLIT/dist/bananaSPLIT.exe
vendored
Binary file not shown.
@@ -38,7 +38,6 @@
|
||||
"CHARTS:"
|
||||
]
|
||||
},
|
||||
"settings":
|
||||
"settings": {
|
||||
"encoding": "utf-8",
|
||||
"monthPosition": 0,
|
||||
@@ -15,25 +15,23 @@ from pprint import pprint
|
||||
from glob import glob
|
||||
from copy import deepcopy
|
||||
from slugify import slugify
|
||||
|
||||
|
||||
####### VAR GLOBALI #######
|
||||
|
||||
####### FUNZIONI GLOBALI #######
|
||||
def printTitle():
|
||||
print(". . . , \n| | _ | _. _ ._ _ _ -+- _ * \n|/\|(/,|(_.(_)[ | )(/, | (_) *")
|
||||
print(". . . , \n| | _ | _. _ ._ _ _ -+- _ * \n|/\|(/,|(_.(_)[ | )(/, | (_) *")
|
||||
|
||||
print(Fore.LIGHTYELLOW_EX,\
|
||||
' _ ___________ _ _____ _____ \n\
|
||||
| | / ___| ___ \ | |_ _|_ _| \n\
|
||||
| |__ __ _ _ __ __ _ _ __ __ _\ `--.| |_/ / | | | | | \n\
|
||||
| \'_ \ / _` | \'_ \ / _` | \'_ \ / _` |`--. \ __/| | | | | | \n\
|
||||
| |_) | (_| | | | | (_| | | | | (_| /\__/ / | | |_____| |_ | | \n\
|
||||
|_.__/ \__,_|_| |_|\__,_|_| |_|\__,_\____/\_| \_____/\___/ \_/')
|
||||
print(Fore.LIGHTYELLOW_EX,' _ ___________ _ _____ _____ \n\
|
||||
| | / ___| ___ \ | |_ _|_ _| \n\
|
||||
| |__ __ _ _ __ __ _ _ __ __ _\ `--.| |_/ / | | | | | \n\
|
||||
| \'_ \ / _` | \'_ \ / _` | \'_ \ / _` |`--. \ __/| | | | | | \n\
|
||||
| |_) | (_| | | | | (_| | | | | (_| /\__/ / | | |_____| |_ | | \n\
|
||||
|_.__/ \__,_|_| |_|\__,_|_| |_|\__,_\____/\_| \_____/\___/ \_/')
|
||||
|
||||
print ('\t\t\t\t\t\t\tVersione 0.4b\n\n', Style.RESET_ALL)
|
||||
print('Iniziamo!!')
|
||||
pass
|
||||
|
||||
print ('\t\t\t\t\t\t\tVersione 0.4a\n\n', Style.RESET_ALL)
|
||||
print('Iniziamo!!')
|
||||
pass
|
||||
|
||||
#############################################################
|
||||
####################### MAIN ################################
|
||||
@@ -44,81 +42,85 @@ status={'first':0, 'head':1, 'body':2, 'tail':3}
|
||||
s=status['first']
|
||||
|
||||
try:
|
||||
conffiles = glob('*.json')
|
||||
if len(conffiles) < 1:
|
||||
raise
|
||||
fileValid = False
|
||||
while not fileValid:
|
||||
print ('Seleziona un file di configurazione per la lingua:')
|
||||
for cf in enumerate(conffiles):
|
||||
print('[{0}] - {1}'.format(cf[0],cf[1]))
|
||||
try:
|
||||
fn = int(input('Scrivi il numero del file e premi Invio: '))
|
||||
if (fn > len(conffiles)-1 or fn < 0):
|
||||
raise
|
||||
fileValid = True
|
||||
except:
|
||||
print('Scusa, non ho capito bene, ricominciamo..\n')
|
||||
fileValid = False
|
||||
conffiles = glob('*.json')
|
||||
if len(conffiles) < 1:
|
||||
raise
|
||||
fileValid = False
|
||||
while not fileValid:
|
||||
print ('Seleziona un file di configurazione per la lingua:')
|
||||
for cf in enumerate(conffiles):
|
||||
print('[{0}] - {1}'.format(cf[0],cf[1]))
|
||||
try:
|
||||
fn = int(input('Scrivi il numero del file e premi Invio: '))
|
||||
if (fn > len(conffiles)-1 or fn < 0):
|
||||
raise
|
||||
fileValid = True
|
||||
except:
|
||||
print('Scusa, non ho capito bene, ricominciamo..\n')
|
||||
fileValid = False
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS!! File di configurazione non selezionato o non presente..', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
print(Fore.LIGHTRED_EX, 'OOPS!! File di configurazione non selezionato o non presente..', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
|
||||
try:
|
||||
print('\nApro il file di configurazione [{}]...'.format(conffiles[fn]))
|
||||
fp = open(conffiles[fn],'r')
|
||||
cfg = json.load(fp)
|
||||
fp.close
|
||||
try:
|
||||
print('Carico i parametri...')
|
||||
docParams=cfg['docStruct']
|
||||
basePath=cfg['INworkPath']+"{0}.{1}"
|
||||
settings=cfg['settings']
|
||||
delChars=settings['delChars'].split('|')
|
||||
docSep=re.compile(docParams['docSep'])
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX,'OOPS! Qualcosa e\' andato storto, non riesco a caricare la configurazione, controlla la sintassi! :)', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
print('\nApro il file di configurazione [{}]...'.format(conffiles[fn]))
|
||||
fp = open(conffiles[fn],'r')
|
||||
cfg = json.load(fp)
|
||||
fp.close
|
||||
try:
|
||||
print('Carico i parametri...')
|
||||
docParams=cfg['docStruct']
|
||||
basePath=cfg['INworkPath']+"{0}.{1}"
|
||||
settings=cfg['settings']
|
||||
delChars=settings['delChars'].split('|')
|
||||
docSep=re.compile(docParams['docSep'])
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX,'OOPS! Qualcosa e\' andato storto, non riesco a caricare la configurazione, controlla la sintassi! :)', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non trovo il file di configurazione: {}'.format(e), Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non trovo il file di configurazione: {}'.format(e), Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
|
||||
files=[]
|
||||
try:
|
||||
print('Ottengo la lista dei file da separare...')
|
||||
if settings['loadTXT']:
|
||||
files+=glob(basePath.format('*','txt'))
|
||||
if settings['loadDOCX']:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Scusa ma non posso accontentarti, per ora non so leggere i file DOCX.. :(', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
#files+=glob(basePath.format('*','docx'))
|
||||
if len(files)<=0:
|
||||
raise
|
||||
pprint(files)
|
||||
while True:
|
||||
r=input('\nVuoi davvero bananaSPLITTARE questi documenti? [y/n]:')
|
||||
r.strip()
|
||||
if r=='Y' or r =='y':
|
||||
break
|
||||
elif r=='n' or r=='N':
|
||||
print('OK! Nessun problema, ci vediamo dopo :)')
|
||||
input()
|
||||
sys.exit()
|
||||
else:
|
||||
print('Non ho capito la risposta, sii un po\' piu\' specifico... [y/n]\n')
|
||||
pass
|
||||
if settings['removeOldFiles']:
|
||||
print("Rimuovo i vecchi file dalla cartella di destinazione..")
|
||||
for x in glob(cfg['OUTworkPath']+'*.txt'):
|
||||
os.remove(x)
|
||||
print('Ottengo la lista dei file da separare...')
|
||||
if settings['loadTXT']:
|
||||
files+=glob(basePath.format('*','txt'))
|
||||
if settings['loadDOCX']:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Scusa ma non posso accontentarti, per ora non so leggere i file DOCX.. :(', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
#files+=glob(basePath.format('*','docx'))
|
||||
if len(files)<=0:
|
||||
raise
|
||||
pprint(files)
|
||||
while True:
|
||||
r=input('\nVuoi davvero bananaSPLITTARE questi documenti? [y/n]:')
|
||||
r.strip()
|
||||
if r=='Y' or r =='y':
|
||||
break
|
||||
elif r=='n' or r=='N':
|
||||
print('OK! Nessun problema, ci vediamo dopo :)')
|
||||
input()
|
||||
sys.exit()
|
||||
else:
|
||||
print('Non ho capito la risposta, sii un po\' piu\' specifico... [y/n]\n')
|
||||
pass
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a trovare nessun file da leggere :(', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a trovare nessun file da leggere :(', Style.RESET_ALL)
|
||||
input()
|
||||
sys.exit()
|
||||
|
||||
try:
|
||||
if settings['removeOldFiles']:
|
||||
print("Rimuovo i vecchi file dalla cartella di destinazione..")
|
||||
for x in glob(cfg['OUTworkPath']+'*.txt'):
|
||||
os.remove(x)
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a rimuovere i vecchi file :(', Style.RESET_ALL)
|
||||
|
||||
lastTime=time.time()
|
||||
fileCounter = 1
|
||||
@@ -128,201 +130,201 @@ totSkipped=0
|
||||
|
||||
# per ogni file nella lista
|
||||
for f in files:
|
||||
s=status['first']
|
||||
prevLine=''
|
||||
doc={'title':'',
|
||||
'date':'',
|
||||
'content':[]
|
||||
}
|
||||
fileContent=''
|
||||
tempContent=list()
|
||||
fileBaseName=os.path.split(f)[1].split('.')[0]
|
||||
fileBodyList=list()
|
||||
fileContent = list()
|
||||
try:
|
||||
print()
|
||||
print('-'*50)
|
||||
print('Apro il file: {}'.format(fileBaseName))
|
||||
fp = open(f,mode='r', encoding=settings['encoding'])
|
||||
fileContent=fp.readlines() #leggi le linee del file
|
||||
fp.close()
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco ad aprire il file: {}'.format(fileBaseName), Style.RESET_ALL)
|
||||
continue
|
||||
s=status['first']
|
||||
prevLine=''
|
||||
doc={'title':'',
|
||||
'date':'',
|
||||
'content':[]
|
||||
}
|
||||
fileContent=''
|
||||
tempContent=list()
|
||||
fileBaseName=os.path.split(f)[1].split('.')[0]
|
||||
fileBodyList=list()
|
||||
fileContent = list()
|
||||
try:
|
||||
print()
|
||||
print('-'*50)
|
||||
print('Apro il file: {}'.format(fileBaseName))
|
||||
fp = open(f,mode='r', encoding=settings['encoding'])
|
||||
fileContent=fp.readlines() #leggi le linee del file
|
||||
fp.close()
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco ad aprire il file: {}'.format(fileBaseName), Style.RESET_ALL)
|
||||
continue
|
||||
|
||||
print('Elimino le righe vuote...')
|
||||
for ll in fileContent:
|
||||
for c in delChars:
|
||||
ll=ll.replace(c,'')
|
||||
if ll not in ['\n','\r']:
|
||||
tempContent.append(ll)
|
||||
fileContent=deepcopy(tempContent)
|
||||
tempContent=list()
|
||||
print('Elimino le righe vuote...')
|
||||
for ll in fileContent:
|
||||
for c in delChars:
|
||||
ll=ll.replace(c,'')
|
||||
if ll not in ['\n','\r']:
|
||||
tempContent.append(ll)
|
||||
fileContent=deepcopy(tempContent)
|
||||
tempContent=list()
|
||||
|
||||
print('Individuo il contenuto...')
|
||||
docNumber = 0
|
||||
docSkipped = 0
|
||||
bodyCounter = 0
|
||||
duplicateNumber = 0
|
||||
docDate = {}
|
||||
prevLine = ''
|
||||
newsPaperName = ''
|
||||
titleBegin = False
|
||||
print('Individuo il contenuto...')
|
||||
docNumber = 0
|
||||
docSkipped = 0
|
||||
bodyCounter = 0
|
||||
duplicateNumber = 0
|
||||
docDate = {}
|
||||
prevLine = ''
|
||||
newsPaperName = ''
|
||||
titleBegin = False
|
||||
|
||||
for l in fileContent: #per ogni linea del file
|
||||
lineWords=l.lstrip().split(' ') #dividi la riga in parole
|
||||
if s==status['first']:
|
||||
try:
|
||||
#prendo il numero di documento per vedere se ci sono buchi
|
||||
try:
|
||||
nn = parse.parse("{current:d} Of {total} Documents",l.strip().capitalize()).named
|
||||
if nn["current"]-docNumber==1:
|
||||
pass
|
||||
else:
|
||||
if settings["showSkipped"]:
|
||||
print(Fore.LIGHTRED_EX,"OOPS!! Il conto dei documenti non torna! LexisNexis \
|
||||
ne ha saltato qualcuno!\nPrecedente:{0}-Attuale:{1}".format(docNumber,nn["current"]), Style.RESET_ALL)
|
||||
docSkipped+=1
|
||||
docNumber = nn["current"]
|
||||
except:
|
||||
pass
|
||||
if (lineWords[settings['monthPosition']]).capitalize() in docParams['dateWords']:
|
||||
try:
|
||||
docDate=parse.parse(docParams['dateFormat'],l).named
|
||||
docDate['month']=docDate['month'].lstrip().rstrip().capitalize()
|
||||
docDate['month']=docParams['dateWords'].index(docDate['month'])+1
|
||||
title = ''
|
||||
titleBegin=True
|
||||
if settings['getNewsPaperName']:
|
||||
try:
|
||||
if prevLine.split(' ')[0].strip().isalpha():
|
||||
newsPaperName = prevLine.strip()
|
||||
else:
|
||||
newsPaperName = settings['nameNotFoundStr']
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, "OOPS! E' successo qualcosa mentre stavo cercando il nome della pubblicazione,\
|
||||
controlla i file di uscita! \n\t[{}]".format(prevLine.strip()), Style.RESET_ALL)
|
||||
else:
|
||||
newsPaperName = settings['nameNotFoundStr']
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, "OOPS! Ho trovato una riga ambigua.. potrebbe essere una data ma non so: \n\t[{}]". format(l.strip('\r\n')),
|
||||
Style.RESET_ALL)
|
||||
elif lineWords[0] in docParams['headWords']:
|
||||
s=status['head']
|
||||
newDoc=deepcopy(doc)
|
||||
newDoc['title']=title
|
||||
newDoc['date']=docDate
|
||||
newDoc['newsPaperName'] = newsPaperName
|
||||
titleBegin=False
|
||||
else:
|
||||
if titleBegin:
|
||||
title += l.strip().capitalize()
|
||||
except IndexError:
|
||||
print (Fore.LIGHTRED_EX, 'OOPS! Errore inaspettato, contatta il tuo sviluppatore di fiducia!', Style.RESET_ALL)
|
||||
elif s==status['head']:
|
||||
if lineWords[0] not in docParams['headWords']: #se la prima parola non e' tra quelle di inizio
|
||||
tempContent.append(l) # vuol dire che ho trovato l'articolo
|
||||
s=status['body']
|
||||
elif s==status['body']:
|
||||
if not lineWords[0] in docParams['tailWords']: #se la prima parola non e' tra quelle di fine
|
||||
if settings['delLF']:
|
||||
tempContent.append(l.strip('\n')) #allora sto leggendo l'articolo
|
||||
else:
|
||||
tempContent.append(l)
|
||||
else:
|
||||
s=status['tail']
|
||||
anomaly = False
|
||||
if docSep.match(l) is not None: #controlla se ci sono articoli che non hanno le parole chiave finali
|
||||
print(Fore.YELLOW, "HEY! Ho individuato una separatore valido prima che si chiusesse l'articolo precedente, controlla i tuoi file in uscita!\n\
|
||||
L'errore dovrebbe essere intorno all'articolo {} ma non sono sicuro! \n\t\t[{}]".format(docNumber,
|
||||
l.strip()), Style.RESET_ALL)
|
||||
s=status['tail']
|
||||
anomaly = True
|
||||
elif s==status['tail']: #cerco il separatore di articoli e aggiungo quello letto alla lista
|
||||
if docSep.match(l) is not None or anomaly:
|
||||
s=status['first']
|
||||
anomaly = False
|
||||
if settings['delWordBreak']:
|
||||
tempContent=[ll.replace('-\n', '') for ll in tempContent]
|
||||
newDoc['content']=deepcopy(''.join(tempContent))
|
||||
fileBodyList.append(deepcopy(newDoc))
|
||||
tempContent=list()
|
||||
bodyCounter +=1
|
||||
else:
|
||||
pass
|
||||
prevLine=l
|
||||
pass
|
||||
print ('Nel file ho trovato {0} articoli..'.format(bodyCounter))
|
||||
if docSkipped > 0:
|
||||
print (Fore.YELLOW, 'Attentione, LexisNexis ne ha saltati {} !!!'.format(docSkipped), Style.RESET_ALL)
|
||||
print()
|
||||
for l in fileContent: #per ogni linea del file
|
||||
lineWords=l.lstrip().split(' ') #dividi la riga in parole
|
||||
if s==status['first']:
|
||||
try:
|
||||
#prendo il numero di documento per vedere se ci sono buchi
|
||||
try:
|
||||
nn = parse.parse("{current:d} Of {total} Documents",l.strip().capitalize()).named
|
||||
if nn["current"]-docNumber==1:
|
||||
pass
|
||||
else:
|
||||
if settings["showSkipped"]:
|
||||
print(Fore.LIGHTRED_EX,"OOPS!! Il conto dei documenti non torna! LexisNexis \
|
||||
ne ha saltato qualcuno!\nPrecedente:{0}-Attuale:{1}".format(docNumber,nn["current"]), Style.RESET_ALL)
|
||||
docSkipped+=1
|
||||
docNumber = nn["current"]
|
||||
except:
|
||||
pass
|
||||
if (lineWords[settings['monthPosition']]).capitalize() in docParams['dateWords']:
|
||||
try:
|
||||
docDate=parse.parse(docParams['dateFormat'],l).named
|
||||
docDate['month']=docDate['month'].lstrip().rstrip().capitalize()
|
||||
docDate['month']=docParams['dateWords'].index(docDate['month'])+1
|
||||
title = ''
|
||||
titleBegin=True
|
||||
if settings['getNewsPaperName']:
|
||||
try:
|
||||
if prevLine.split(' ')[0].strip().isalpha():
|
||||
newsPaperName = prevLine.strip()
|
||||
else:
|
||||
newsPaperName = settings['nameNotFoundStr']
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, "OOPS! E' successo qualcosa mentre stavo cercando il nome della pubblicazione,\
|
||||
controlla i file di uscita! \n\t[{}]".format(prevLine.strip()), Style.RESET_ALL)
|
||||
else:
|
||||
newsPaperName = settings['nameNotFoundStr']
|
||||
except:
|
||||
print(Fore.LIGHTRED_EX, "OOPS! Ho trovato una riga ambigua.. potrebbe essere una data ma non so: \n\t[{}]". format(l.strip('\r\n')),
|
||||
Style.RESET_ALL)
|
||||
elif lineWords[0] in docParams['headWords']:
|
||||
s=status['head']
|
||||
newDoc=deepcopy(doc)
|
||||
newDoc['title']=title
|
||||
newDoc['date']=docDate
|
||||
newDoc['newsPaperName'] = newsPaperName
|
||||
titleBegin=False
|
||||
else:
|
||||
if titleBegin:
|
||||
title += l.strip().capitalize()
|
||||
except IndexError:
|
||||
print (Fore.LIGHTRED_EX, 'OOPS! Errore inaspettato, contatta il tuo sviluppatore di fiducia!', Style.RESET_ALL)
|
||||
elif s==status['head']:
|
||||
if lineWords[0] not in docParams['headWords']: #se la prima parola non e' tra quelle di inizio
|
||||
tempContent.append(l) # vuol dire che ho trovato l'articolo
|
||||
s=status['body']
|
||||
elif s==status['body']:
|
||||
if not lineWords[0] in docParams['tailWords']: #se la prima parola non e' tra quelle di fine
|
||||
if settings['delLF']:
|
||||
tempContent.append(l.strip('\n')) #allora sto leggendo l'articolo
|
||||
else:
|
||||
tempContent.append(l)
|
||||
else:
|
||||
s=status['tail']
|
||||
anomaly = False
|
||||
if docSep.match(l) is not None: #controlla se ci sono articoli che non hanno le parole chiave finali
|
||||
print(Fore.YELLOW, "HEY! Ho individuato una separatore valido prima che si chiusesse l'articolo precedente, controlla i tuoi file in uscita!\n\
|
||||
L'errore dovrebbe essere intorno all'articolo {} ma non sono sicuro! \n\t\t[{}]".format(docNumber,
|
||||
l.strip()), Style.RESET_ALL)
|
||||
s=status['tail']
|
||||
anomaly = True
|
||||
elif s==status['tail']: #cerco il separatore di articoli e aggiungo quello letto alla lista
|
||||
if docSep.match(l) is not None or anomaly:
|
||||
s=status['first']
|
||||
anomaly = False
|
||||
if settings['delWordBreak']:
|
||||
tempContent=[ll.replace('-\n', '') for ll in tempContent]
|
||||
newDoc['content']=deepcopy(''.join(tempContent))
|
||||
fileBodyList.append(deepcopy(newDoc))
|
||||
tempContent=list()
|
||||
bodyCounter +=1
|
||||
else:
|
||||
pass
|
||||
prevLine=l
|
||||
pass
|
||||
print ('Nel file ho trovato {0} articoli..'.format(bodyCounter))
|
||||
if docSkipped > 0:
|
||||
print (Fore.YELLOW, 'Attentione, LexisNexis ne ha saltati {} !!!'.format(docSkipped), Style.RESET_ALL)
|
||||
print()
|
||||
|
||||
if bodyCounter >= 1:
|
||||
if settings['removeDuplicates']:
|
||||
print ('Controllo se ci sono dei duplicati..')
|
||||
titleList=[]
|
||||
duplicateList=[]
|
||||
duplicateNumber=0
|
||||
for idx, ff in enumerate(fileBodyList):
|
||||
if ff['title'] not in titleList:
|
||||
titleList.append(ff['title'])
|
||||
ff['duplicate']=False
|
||||
fileBodyList[idx]=ff
|
||||
pass
|
||||
else:
|
||||
if ff['title'] not in duplicateList:
|
||||
duplicateList.append(ff['title'])
|
||||
if settings['showRemovedDuplicates']:
|
||||
print ('Duplicato: {}'.format(ff['title'].strip()))
|
||||
ff['duplicate'] = True
|
||||
fileBodyList[idx]=ff
|
||||
duplicateNumber+=1
|
||||
print ('Ho rimosso {} duplicati di {} articoli..\n'. format(duplicateNumber, len(duplicateList)))
|
||||
else:
|
||||
for idx, ff in enumerate(fileBodyList):
|
||||
ff['duplicate']=False
|
||||
fileBodyList[idx]=ff
|
||||
print('Salto il controllo dei duplicati..')
|
||||
pass
|
||||
if settings['saveSeparateFiles']:
|
||||
print ('Salvo gli articoli in file separati...')
|
||||
print ('Persorso: {0}'.format(cfg['OUTworkPath'].format('nomeFile')))
|
||||
for ff in fileBodyList:
|
||||
try:
|
||||
if ff['duplicate'] == False:
|
||||
fileName=cfg['OUTnameFormat'].format(title=slugify(ff['title'][:settings['maxTitleLen']]),\
|
||||
filename=slugify(fileBaseName),\
|
||||
docnum=fileBodyCounter,\
|
||||
papername=ff['newsPaperName'].strip(),\
|
||||
**ff['date'])
|
||||
out=open(cfg['OUTworkPath']+'{0}'.format(fileName),'wb')
|
||||
if settings['includeTitle']:
|
||||
ff['content'] = ff['title']+os.linesep+ff['content']
|
||||
out.write(ff['content'].encode(settings['encoding']))
|
||||
out.close()
|
||||
fileBodyCounter+=1
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a scrivere il file: {}'.format(e), Style.RESET_ALL)
|
||||
continue
|
||||
if settings['saveBodyFile']:
|
||||
print('Salvo gli articoli in un singolo file vicino agli originali...')
|
||||
print ('Persorso: {0}'.format(cfg['OUTworkPath'].format('nomeFile')))
|
||||
try:
|
||||
fileName=slugify(fileBaseName)
|
||||
fileName='BODYFILE_{0}_{1}.txt'.format(fileCounter,fileName[:settings['maxTitleLen']])
|
||||
fileContent = os.linesep.join([cc['content'] for cc in fileBodyList])
|
||||
out=open(cfg['OUTworkPath']+'{0}'.format(fileName),'wb')
|
||||
out.write(fileContent.encode(settings['encoding']))
|
||||
out.close()
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a scrivere il file: {}'.format(e), Style.RESET_ALL)
|
||||
continue
|
||||
fileCounter+=1
|
||||
totSkipped+=docSkipped
|
||||
totFound+=bodyCounter-duplicateNumber
|
||||
else:
|
||||
print('[{0}] non contiene articoli, \n controlla meglio le parole chiave! SGRUNT'.format(fileBaseName))
|
||||
print('-'*50)
|
||||
if bodyCounter >= 1:
|
||||
if settings['removeDuplicates']:
|
||||
print ('Controllo se ci sono dei duplicati..')
|
||||
titleList=[]
|
||||
duplicateList=[]
|
||||
duplicateNumber=0
|
||||
for idx, ff in enumerate(fileBodyList):
|
||||
if ff['title'] not in titleList:
|
||||
titleList.append(ff['title'])
|
||||
ff['duplicate']=False
|
||||
fileBodyList[idx]=ff
|
||||
pass
|
||||
else:
|
||||
if ff['title'] not in duplicateList:
|
||||
duplicateList.append(ff['title'])
|
||||
if settings['showRemovedDuplicates']:
|
||||
print ('Duplicato: {}'.format(ff['title'].strip()))
|
||||
ff['duplicate'] = True
|
||||
fileBodyList[idx]=ff
|
||||
duplicateNumber+=1
|
||||
print ('Ho rimosso {} duplicati di {} articoli..\n'. format(duplicateNumber, len(duplicateList)))
|
||||
else:
|
||||
for idx, ff in enumerate(fileBodyList):
|
||||
ff['duplicate']=False
|
||||
fileBodyList[idx]=ff
|
||||
print('Salto il controllo dei duplicati..')
|
||||
pass
|
||||
if settings['saveSeparateFiles']:
|
||||
print ('Salvo gli articoli in file separati...')
|
||||
print ('Persorso: {0}'.format(cfg['OUTworkPath'].format('nomeFile')))
|
||||
for ff in fileBodyList:
|
||||
try:
|
||||
if ff['duplicate'] == False:
|
||||
fileName=cfg['OUTnameFormat'].format(title=slugify(ff['title'][:settings['maxTitleLen']]),\
|
||||
filename=slugify(fileBaseName),\
|
||||
docnum=fileBodyCounter,\
|
||||
papername=ff['newsPaperName'].strip(),\
|
||||
**ff['date'])
|
||||
out=open(cfg['OUTworkPath']+'{0}'.format(fileName),'wb')
|
||||
if settings['includeTitle']:
|
||||
ff['content'] = ff['title']+os.linesep+ff['content']
|
||||
out.write(ff['content'].encode(settings['encoding']))
|
||||
out.close()
|
||||
fileBodyCounter+=1
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a scrivere il file: {}'.format(e), Style.RESET_ALL)
|
||||
continue
|
||||
if settings['saveBodyFile']:
|
||||
print('Salvo gli articoli in un singolo file vicino agli originali...')
|
||||
print ('Persorso: {0}'.format(cfg['OUTworkPath'].format('nomeFile')))
|
||||
try:
|
||||
fileName=slugify(fileBaseName)
|
||||
fileName='BODYFILE_{0}_{1}.txt'.format(fileCounter,fileName[:settings['maxTitleLen']])
|
||||
fileContent = os.linesep.join([cc['content'] for cc in fileBodyList])
|
||||
out=open(cfg['OUTworkPath']+'{0}'.format(fileName),'wb')
|
||||
out.write(fileContent.encode(settings['encoding']))
|
||||
out.close()
|
||||
except IOError as e:
|
||||
print(Fore.LIGHTRED_EX, 'OOPS! Qualcosa e\' andato storto, non riesco a scrivere il file: {}'.format(e), Style.RESET_ALL)
|
||||
continue
|
||||
fileCounter+=1
|
||||
totSkipped+=docSkipped
|
||||
totFound+=bodyCounter-duplicateNumber
|
||||
else:
|
||||
print('[{0}] non contiene articoli, \n controlla meglio le parole chiave! SGRUNT'.format(fileBaseName))
|
||||
print('-'*50)
|
||||
|
||||
print()
|
||||
print (Fore.LIGHTYELLOW_EX, 'bananaSPLIT ha concluso con successo in {0:1.3f} secondi, \n\
|
||||
|
||||
64
bananaconfEN.json
Normal file
64
bananaconfEN.json
Normal file
@@ -0,0 +1,64 @@
|
||||
{
|
||||
"INworkPath": "D:\\Test\\",
|
||||
"OUTworkPath": "D:\\Test\\Separati\\",
|
||||
"OUTnameFormat":"TEST_{docnum}_{year:04d}{month:02d}{day:02d}_{title}.txt",
|
||||
"docStruct": {
|
||||
"docSep": "\\s*Copyright [(0-9)]+",
|
||||
"dateFormat":"{month} {day:d}, {year:d}{}",
|
||||
"dateWords": [
|
||||
"January",
|
||||
"February",
|
||||
"March",
|
||||
"April",
|
||||
"May",
|
||||
"June",
|
||||
"July",
|
||||
"August",
|
||||
"September",
|
||||
"October",
|
||||
"November",
|
||||
"December"
|
||||
],
|
||||
"headWords": [
|
||||
"BYLINE:",
|
||||
"SECTION:",
|
||||
"LENGTH:",
|
||||
"DATELINE:",
|
||||
"HIGHLIGHT:",
|
||||
"Email:"
|
||||
],
|
||||
"tailWords": [
|
||||
"Newstex ID" ,
|
||||
"NOTES",
|
||||
"LANGUAGE:",
|
||||
"GRAPHIC:",
|
||||
"TYPE:",
|
||||
"URL:",
|
||||
"LOAD-DATE:",
|
||||
"PUBLICATION-TYPE:",
|
||||
"DOCUMENT-TYPE:",
|
||||
"CHARTS:",
|
||||
"JOURNAL-CODE:"
|
||||
]
|
||||
},
|
||||
"settings": {
|
||||
"encoding": "utf-8",
|
||||
"monthPosition": 0,
|
||||
"getNewsPaperName": true,
|
||||
"nameNotFoundStr" : "--ND--",
|
||||
"includeTitle" : true,
|
||||
"removeDuplicates": true,
|
||||
"showSkipped": false,
|
||||
"showRemovedDuplicates": true,
|
||||
"maxTitleLen": 32,
|
||||
"loadTXT": true,
|
||||
"loadDOCX": false,
|
||||
"removeOldFiles":true,
|
||||
"saveSeparateFiles": true,
|
||||
"saveBodyFile": true,
|
||||
"saveBodyNumber":true,
|
||||
"delLF": false,
|
||||
"delWordBreak": true,
|
||||
"delChars": "'|@|#"
|
||||
}
|
||||
}
|
||||
61
bananaconfITA.json
Normal file
61
bananaconfITA.json
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"INworkPath": "C:\\Test\\",
|
||||
"OUTworkPath": "C:\\Test\\Separati\\",
|
||||
"OUTnameFormat":"TEST_{docnum}_{year:04d}{month:02d}{day:02d}_{papername}_{title}.txt",
|
||||
"docStruct": {
|
||||
"docSep": "Copyright [(0-9)]+",
|
||||
"dateFormat":"{day:d} {month} {year:d} {}",
|
||||
"dateWords": [
|
||||
"Gennaio",
|
||||
"Febbraio",
|
||||
"Marzo",
|
||||
"Aprile",
|
||||
"Maggio",
|
||||
"Giugno",
|
||||
"Luglio",
|
||||
"Agosto",
|
||||
"Settembre",
|
||||
"Ottobre",
|
||||
"Novembre",
|
||||
"Dicembre"
|
||||
],
|
||||
"headWords": [
|
||||
"BYLINE:",
|
||||
"SECTION:",
|
||||
"LENGTH:",
|
||||
"DATELINE:",
|
||||
"HIGHLIGHT:",
|
||||
"Email:"
|
||||
],
|
||||
"tailWords": [
|
||||
"LANGUAGE:",
|
||||
"GRAPHIC:",
|
||||
"TYPE:",
|
||||
"URL:",
|
||||
"LOAD-DATE:",
|
||||
"PUBLICATION-TYPE:",
|
||||
"DOCUMENT-TYPE:",
|
||||
"CHARTS:"
|
||||
]
|
||||
},
|
||||
"settings": {
|
||||
"encoding": "utf-8",
|
||||
"monthPosition": 0,
|
||||
"getNewsPaperName": true,
|
||||
"nameNotFoundStr" : "--ND--",
|
||||
"includeTitle" : true,
|
||||
"removeDuplicates": true,
|
||||
"showSkipped": false,
|
||||
"showRemovedDuplicates": true,
|
||||
"maxTitleLen": 32,
|
||||
"loadTXT": true,
|
||||
"loadDOCX": false,
|
||||
"removeOldFiles":true,
|
||||
"saveSeparateFiles": true,
|
||||
"saveBodyFile": true,
|
||||
"saveBodyNumber":true,
|
||||
"delLF": false,
|
||||
"delWordBreak": true,
|
||||
"delChars": "'|@|#"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user