Commit Graph

1055 Commits

Author SHA1 Message Date
b7dd8fe141 bugfix 2025-05-07 09:08:05 +00:00
c700359569 bugfix 2025-05-07 08:42:28 +00:00
854929d10d bugfix 2025-05-07 08:28:09 +00:00
145981dc70 bugfix 2025-05-07 06:33:21 +00:00
263049342b v1.7.1 Re-Import der neu erstellten Version
Re-Import der neu erstellten Version
2025-05-07 06:00:42 +00:00
fd57db914d bugfix 2025-05-06 12:53:53 +00:00
589b4757b9 bugfix 2025-05-06 12:32:51 +00:00
5ca839608f bugfix 2025-05-06 12:30:09 +00:00
bc028371d2 bugfix 2025-05-06 06:52:01 +00:00
1e61c16936 bugfix 2025-05-05 14:50:21 +00:00
59fac9a964 bugfix 2025-05-05 13:55:58 +00:00
7a47c516d5 Reset 2025-05-05 13:12:55 +00:00
1814922a07 bugfix 2025-04-25 13:05:14 +00:00
6217f1c299 bugfix 2025-04-25 12:55:53 +00:00
f5cda2d6ac bugfix 2025-04-25 12:44:42 +00:00
8d35dfbc8a v1.7.0: Refactor into modular classes & flexible UI
- Restructured codebase into modular classes (DataProcessor, Handlers)
- Centralized processing logic in DataProcessor class
- Implemented flexible step selection via flags in single row processing
- Added detailed timestamp/status checks for conditional step execution
- Integrated batch processing methods into DataProcessor
- Developed robust CLI/interactive user interface for mode selection
- Added new modes: find_wiki_serp, website_details, wiki_reextract_missing_an, combined_all
- Enhanced reeval & full_run modes with granular step control
- Improved logging with file output and better detail
- Consolidated & refined helper functions and external API calls
- Updated column mapping with new timestamps
- Revised ML model loading, prediction, and training data prep
2025-04-25 12:40:18 +00:00
db9a5fd976 bugfix 2025-04-24 18:27:41 +00:00
5cfa10c28e bugfix 2025-04-24 18:24:43 +00:00
2664a830b7 bugfix 2025-04-24 18:20:15 +00:00
79245057b3 bugfix 2025-04-24 18:12:21 +00:00
c83ddf85df bugfix 2025-04-24 18:10:23 +00:00
f6a38eaf86 bugfix 2025-04-24 18:08:24 +00:00
63565e32e3 bugfix 2025-04-24 18:06:28 +00:00
2f293d2302 bugfix 2025-04-24 18:04:30 +00:00
706523a77d bugfix 2025-04-24 18:02:08 +00:00
1fde11db9a bugfix 2025-04-24 18:00:24 +00:00
7928c2dcd5 bugfix 2025-04-24 17:58:25 +00:00
fa00feb30e bugfix 2025-04-24 17:55:45 +00:00
1f0a43c0b9 bugfix 2025-04-24 17:28:08 +00:00
b4635ae455 bugfix 2025-04-24 17:08:48 +00:00
b72c63d206 bugfix 2025-04-24 17:01:31 +00:00
3ed2ddd16e bugfix 2025-04-24 16:55:18 +00:00
93ec051912 bugfix 2025-04-24 16:49:43 +00:00
00ceac6ed3 bugfix 2025-04-24 16:36:07 +00:00
32e1e55652 bugfix 2025-04-24 16:29:53 +00:00
a3f154cd44 bugfix 2025-04-24 16:17:17 +00:00
62afec9e4e bugfix 2025-04-24 15:45:46 +00:00
f9c47ea6a7 bugfix 2025-04-24 15:24:45 +00:00
8dd3381728 bugfix 2025-04-24 15:18:25 +00:00
1cac9dd1ee debug 2025-04-24 15:05:35 +00:00
b771a35b66 debug 2025-04-24 14:57:48 +00:00
cccb90f3da bugfix 2025-04-24 14:42:12 +00:00
b4ca6e35e9 bugfix 2025-04-24 14:41:06 +00:00
42de5dee50 bugfix 2025-04-24 14:39:50 +00:00
c36d2cf300 bugfix 2025-04-24 06:33:57 +00:00
dab3a6b8f2 bugfix 2025-04-24 06:32:25 +00:00
f8621a41b8 bugfix 2025-04-24 06:12:04 +00:00
73e835afc1 bugfix 2025-04-24 05:59:51 +00:00
48f1c8aa2e v1.7.0: Major refactoring for flexible processing modes and UI.
This version introduces significant structural changes to improve code maintainability and user flexibility by centralizing processing logic within the DataProcessor class and implementing a new menu-driven user interface with granular control over processing steps and row selection.

- Increment version number to v1.7.0.
- Major Structural Refactoring:
    - DataProcessor Centralization: Move the core processing logic for sequential runs, re-evaluation, batch modes, and specific data lookups/updates into the `DataProcessor` class as methods.
    - Resolve AttributeErrors: Correct the indentation for all methods belonging to the `DataProcessor` class to ensure they are correctly defined within the class scope.
    - Fix DataProcessor Initialization: Update the `DataProcessor.__init__` signature and implementation to accept and store required handler instances (e.g., `GoogleSheetHandler`, `WikipediaScraper`).
- New User Interface:
    - Menu-Driven Dispatcher: Implement a new `run_user_interface` function to replace the old `main` logic block. This function provides an interactive, multi-level numeric menu for selecting processing modes and parameters. It can also process direct CLI arguments.
    - Simplified Main: The `main` function is reduced to handling initial setup (Config, Logging, Handlers, DataProcessor instantiation) and then calling `run_user_interface`.
- Granular Processing Control:
    - Step Selection: Implement the ability for users to select specific processing steps (grouped logically, e.g., 'website', 'wiki', 'chatgpt') for execution within sequential, re-evaluation, and criteria-based modes.
    - Flags for Steps: Adapt the `_process_single_row` method and the methods that call it (`process_reevaluation_rows`, `process_sequential`, `process_rows_matching_criteria`) to accept and utilize flags (e.g., `process_wiki`, `process_chatgpt`) to control which processing blocks are attempted for a given row.
    - Refined Step Logic: Ensure processing blocks within `_process_single_row` correctly check their corresponding step flag *and* the necessary timestamp/status conditions (unless `force_reeval` is active).
- New Processing Modes:
    - Criteria Mode: Implement the `process_rows_matching_criteria` method and its UI integration, allowing users to select a predefined criterion function (e.g., 'M filled and AN empty') to filter rows for processing.
    - Wiki Re-Extraction (Criteria-based): Integrate the logic for processing rows where Wiki URL (M) is filled and Wiki Timestamp (AN) is empty, likely as a specific option within the new Criteria mode.
- Fixes and Improvements:
    - SyntaxError Resolution: Resolve persistent `SyntaxError`s related to complex f-string formatting in logging calls by constructing message parts separately.
    - `find_wiki_serp` Filter Logic: Ensure the `process_find_wiki_serp` method correctly uses the `get_numeric_filter_value` helper to apply the Umsatz OR Mitarbeiter threshold filter logic based on the correct data units.
    - Timestamp/Status Logic: Consolidate and clarify the logic for checking process necessity based on timestamps, status flags (like S='X'), and the `force_reeval` parameter in helper methods like `_is_step_processing_needed`.
    - ML Integration: Ensure `prepare_data_for_modeling` and `train_technician_model` are correctly integrated as `DataProcessor` methods and function within the new structure.
    - Consistency: Address inconsistencies in timestamp setting (e.g., ensuring AP is set by batch modes) and parameter handling across different methods where identified during the refactoring.
    - Helper Functions: Define or confirm the global scope of necessary helper functions (`get_numeric_filter_value`, criteria functions, `_process_batch`, etc.).

This version marks a significant milestone in making the script more modular, maintainable, and user-controllable, laying the groundwork for further enhancements like the ML estimation mode.
2025-04-24 05:04:51 +00:00
aadebd162e bugfix 2025-04-23 12:47:54 +00:00