This commit is contained in:
2025-04-08 19:39:55 +00:00
parent 5d60447009
commit 6e768a092b

View File

@@ -60,6 +60,47 @@ def retry_on_failure(func):
return wrapper
# ==================== LOGGING & HELPER FUNCTIONS ====================
def serp_website_lookup(company_name):
"""
Ermittelt über SERPAPI (Google-Suche) die Website zum Unternehmen.
- Verwendet als Query den Firmennamen.
- Filtert Ergebnisse anhand einer Blacklist (z.B. bloomberg.com, northdata.de, finanzen.net, handelsblatt.com).
Returns:
Die gefundene Website-URL oder "k.A.", falls kein passendes Ergebnis gefunden wurde.
"""
# Blacklist unerwünschter Domains
blacklist = ["bloomberg.com", "northdata.de", "finanzen.net", "handelsblatt.com"]
try:
with open("serpApiKey.txt", "r") as f:
serp_key = f.read().strip()
except Exception as e:
debug_print(f"Fehler beim Lesen des SerpAPI-Schlüssels: {e}")
return "k.A."
query = f"{company_name} Website"
params = {
"engine": "google",
"q": query,
"api_key": serp_key,
"hl": "de"
}
try:
response = requests.get("https://serpapi.com/search", params=params, timeout=10)
data = response.json()
if "organic_results" in data:
for result in data["organic_results"]:
url = result.get("link", "")
# Filtere Ergebnisse, die in der Blacklist stehen
if url and not any(bad in url for bad in blacklist):
debug_print(f"SERP-Website Lookup: Gefundene Website '{url}' für {company_name}")
return url
return "k.A."
except Exception as e:
debug_print(f"Fehler beim SERP-API Website Lookup für {company_name}: {e}")
return "k.A."
def create_log_filename(mode):
now = datetime.now().strftime("%d-%m-%Y_%H-%M")
ver_short = Config.VERSION.replace(".", "")