import requests
from bs4 import BeautifulSoup
import pywikibot
import cchardet
file_path = 'peyv.txt'
site = pywikibot.Site('ku', 'wiktionary')
site.login()
with open(file_path, 'rb') as file:
content = file.read()
encoding = cchardet.detect(content)['encoding']
content = content.decode(encoding)
for line in content.splitlines():
word_to_search = line.strip()
url = f"https://ku.wiktionary.org/wiki/{word_to_search}"
response = requests.get(url)
if response.status_code == 200:
html_content = response.content
soup = BeautifulSoup(html_content, 'html.parser')
word_element = soup.find('span', {'class': 'Latn form-of lang-ku def|constr|p-form-of gender-m'}).find('a', title=True)
if word_element:
word = word_element.get_text(strip=True)
page = pywikibot.Page(site, word)
if not page.exists():
page.text = f"== {{{{ziman|ku}}}} ==\n\n=== Formeke navdêrê ===\n{{{{ku-tew-nav|{word_to_search}|mê|îzafe|binavkirî}}}}\n{{{{navdêr|ku|form=erê}}}}\n# {{{{formeke peyvê|ku|{word_to_search}||îzafe|ya|binavkirî|ya|pirjimar|ya|mê}}}}"
page.save(f"Rûpel {word} hat afirandin")
print(f"Die Seite für {word} wurde erstellt.")
else:
page.text = f"== {{{{ziman|ku}}}} ==\n\n=== Formeke navdêrê ===\n{{{{ku-tew-nav|{word_to_search}|mê|îzafe|binavkirî}}}}\n{{{{navdêr|ku|form=erê}}}}\n# {{{{formeke peyvê|ku|{word_to_search}||îzafe|ya|binavkirî|ya|pirjimar|ya|mê}}}}"
page.save(f"Naveroka peyva {word} hat rojanekirin.")
print(f"Die Seite für {word} existiert bereits und wurde aktualisiert.")
else:
print(f"Das Wort {word_to_search} wurde nicht auf der Seite gefunden.")
else:
print(f"Fehler beim Abrufen der Seite für {word_to_search}. Statuscode:", response.status_code)