Spaces:
Sleeping
Sleeping
| from scrapy.exceptions import DropItem | |
| from scraper.preprocessing import preprocess_text, anonymize_text | |
| class MevzuatPreprocessPipeline: | |
| def process_item(self, item, spider): | |
| if spider.name != "mevzuat": | |
| return item | |
| temiz = preprocess_text(item["text"]) | |
| if len(temiz) < 50: | |
| raise DropItem("Metin çok kısa") | |
| item["text"] = temiz | |
| item["char_len"] = len(temiz) | |
| return item | |
| class YargiCleanPipeline: | |
| """ | |
| Yargıtay kararları için temizlik ve anonimleştirme pipeline'ı | |
| """ | |
| MIN_CHAR_LEN = 300 # Yargıtay kararları için daha güvenli alt sınır | |
| def process_item(self, item, spider): | |
| if spider.name != "yargitay": | |
| return item | |
| text = item.get("text") | |
| if not text: | |
| raise DropItem("Metin alanı boş") | |
| temiz = preprocess_text(text) | |
| temiz = anonymize_text(temiz) | |
| if len(temiz) < self.MIN_CHAR_LEN: | |
| raise DropItem("Karar metni çok kısa") | |
| item["text"] = temiz | |
| item["char_len"] = len(temiz) | |
| item.setdefault("source", "yargitay") | |
| return item | |