Instructions to use pemix09/paperstack_document_data_retrieval with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- TF-Keras
How to use pemix09/paperstack_document_data_retrieval with TF-Keras:
# Note: 'keras<3.x' or 'tf_keras' must be installed (legacy) # See https://github.com/keras-team/tf-keras for more details. from huggingface_hub import from_pretrained_keras model = from_pretrained_keras("pemix09/paperstack_document_data_retrieval") - Notebooks
- Google Colab
- Kaggle
| import os | |
| import requests | |
| from bs4 import BeautifulSoup | |
| import json | |
| import time | |
| import random | |
| # --- KONFIGURACJA --- | |
| OUTPUT_DIR = "scan-candidates" | |
| LIMIT = 20 # Liczba zdjęć na kategorię | |
| # Agresywne zapytania nakierowane na wypełnione dokumenty | |
| CATEGORIES = { | |
| # --- FINANCIAL --- | |
| "pit11": "PIT-11 przykład wypełnienia skan", | |
| "pit37": "PIT-37 wypełniony formularz dane", | |
| "pit36": "PIT-36 uzupełniony przykład", | |
| "pit36L": "PIT-36L wypełniony skan", | |
| "pit28": "PIT-28 wypełniona deklaracja", | |
| "pit38": "PIT-38 przykład uzupełniony", | |
| "pit39": "PIT-39 przykładowe dane", | |
| "pit5": "PIT-5 wypełniony formularz skan", | |
| "pit8C": "PIT-8C wypełniony dane", | |
| "vat7": "VAT-7 deklaracja wypełniona przykład", | |
| "cit8": "CIT-8 uzupełniony formularz", | |
| "pcc3": "PCC-3 wypełniony przykład", | |
| "invoice": "faktura vat wypełniona dane skan", | |
| "proformaInvoice": "faktura proforma uzupełniona dane", | |
| "receipt": "paragon fiskalny zdjęcie realne", | |
| "utilityBill": "rachunek za prąd uzupełniony dane", | |
| "bankStatement": "wyciąg bankowy realny przykład", | |
| "loanAgreement": "umowa pożyczki wypełniona dane", | |
| "insurancePolicy": "polisa ubezpieczeniowa wypełniona skan", | |
| # --- LEGAL --- | |
| "notarialDeed": "akt notarialny skan z danymi", | |
| "courtJudgment": "wyrok sądu wypełniony uzupełniony", | |
| "powerOfAttorney": "pełnomocnictwo uzupełnione dane", | |
| "employmentContract": "umowa o pracę wypełniona dane", | |
| "mandateContract": "umowa zlecenie uzupełniona przykładowa", | |
| "taskContract": "umowa o dzieło wypełniona skan", | |
| "b2bContract": "umowa B2B wypełniona dane", | |
| "nonCompeteAgreement": "zakaz konkurencji uzupełniony przykład", | |
| "lawsuit": "pozew cywilny wypełniony skan", | |
| # --- PERSONAL --- | |
| "idCard": "dowód osobisty specimen dane polska", | |
| "passport": "paszport polski specimen dane", | |
| "birthCertificate": "odpis aktu urodzenia wypełniony", | |
| "marriageCertificate": "akt małżeństwa uzupełniony dane", | |
| "deathCertificate": "akt zgonu wypełniony przykład", | |
| "peselConfirmation": "potwierdzenie nadania PESEL wypełnione", | |
| "drivingLicense": "prawo jazdy specimen polska", | |
| "schoolCertificate": "świadectwo szkolne wypełnione dane", | |
| "universityDiploma": "dyplom ukończenia studiów wypełniony", | |
| "professionalCertificate": "certyfikat zawodowy uzupełniony", | |
| "cv": "życiorys CV wypełniony dane", | |
| # --- HEALTH --- | |
| "sickLeave": "zwolnienie lekarskie L4 wypełnione skan", | |
| "prescription": "recepta lekarska wypisana dane", | |
| "medicalResults": "wyniki badań laboratoryjnych dane pacjenta", | |
| "referral": "skierowanie do lekarza uzupełnione", | |
| "medicalHistory": "karta pacjenta wypełniona skan", | |
| "vaccinationCard": "karta szczepień uzupełniona", | |
| "sanitaryBooklet": "książeczka sanepidowska wypełniona", | |
| # --- PROPERTY --- | |
| "propertyDeed": "akt własności nieruchomości uzupełniony", | |
| "landRegistry": "księga wieczysta odpis przykład", | |
| "rentalAgreement": "umowa najmu mieszkania wypełniona dane", | |
| "registrationCertificate": "dowód rejestracyjny pojazdu uzupełniony", | |
| "vehicleHistory": "raport historii pojazdu dane", | |
| "landMap": "mapa geodezyjna skan", | |
| "technicalInspection": "zaświadczenie o badaniu technicznym wypełnione", | |
| # --- OTHER --- | |
| "application": "wniosek urzędowy wypełniony skan", | |
| "certificate": "zaświadczenie o niekaralności uzupełnione", | |
| "authorization": "upoważnienie wypełnione dane", | |
| } | |
| HEADERS = { | |
| 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36' | |
| } | |
| def download_images(query, folder_name): | |
| print(f"\n🚀 POBIERANIE WYPEŁNIONYCH: {folder_name.upper()}") | |
| search_url = f"https://www.bing.com/images/search?q={query.replace(' ', '+')}&form=HDRSC2" | |
| try: | |
| response = requests.get(search_url, headers=HEADERS, timeout=15) | |
| soup = BeautifulSoup(response.text, 'html.parser') | |
| target_path = os.path.join(OUTPUT_DIR, folder_name) | |
| os.makedirs(target_path, exist_ok=True) | |
| links = [] | |
| for a in soup.find_all("a", {"class": "iusc"}): | |
| if "m" in a.attrs: | |
| m = json.loads(a["m"]) | |
| links.append(m["murl"]) | |
| print(f" 🔍 Linki: {len(links)}") | |
| downloaded = 0 | |
| for url in links: | |
| if downloaded >= LIMIT: break | |
| try: | |
| if any(ext in url.lower() for ext in [".pdf", ".html", ".php"]): continue | |
| ext = ".jpg" if ".png" not in url.lower() else ".png" | |
| res = requests.get(url, headers=HEADERS, timeout=7) | |
| if res.status_code == 200 and "text/html" not in res.headers.get('Content-Type', ''): | |
| file_name = f"{folder_name}_{downloaded}{ext}" | |
| with open(os.path.join(target_path, file_name), "wb") as f: | |
| f.write(res.content) | |
| print(f" ✅ [{downloaded+1}/{LIMIT}] {file_name}") | |
| downloaded += 1 | |
| if downloaded % 5 == 0: time.sleep(1) | |
| except: continue | |
| except Exception as e: | |
| print(f" 🚨 Błąd: {e}") | |
| if __name__ == "__main__": | |
| os.makedirs(OUTPUT_DIR, exist_ok=True) | |
| for i, (folder, query) in enumerate(CATEGORIES.items()): | |
| download_images(query, folder) | |
| wait = random.uniform(3, 6) | |
| print(f"😴 Przerwa {wait:.1f}s... ({i+1}/{len(CATEGORIES)})") | |
| time.sleep(wait) |