Spaces:
Runtime error
Runtime error
| import json | |
| class WikiDBJson: | |
| def __init__(self, wiki_data_path): | |
| """Initialize the database with path to Wikipedia data""" | |
| self.wiki_data = self._load_wiki_data(wiki_data_path) | |
| def _load_wiki_data(self, path): | |
| """Load Wikipedia data from JSON file""" | |
| print(f"Loading wiki data from {path}...") | |
| with open(path, 'r', encoding='utf-8') as f: | |
| wiki_data = json.load(f) | |
| print(f"Loaded {len(wiki_data)} articles") | |
| return wiki_data | |
| def get_article_count(self): | |
| """Return the number of articles in the database""" | |
| return len(self.wiki_data) | |
| def get_all_article_titles(self): | |
| """Return a list of all article titles""" | |
| return list(self.wiki_data.keys()) | |
| def get_article(self, title): | |
| """Get article data by title""" | |
| return self.wiki_data.get(title, {}) | |
| def article_exists(self, title): | |
| """Check if an article exists in the database""" | |
| return title in self.wiki_data | |
| def get_article_text(self, title): | |
| """Get the text of an article""" | |
| article = self.get_article(title) | |
| return article.get('text', '') | |
| def get_article_links(self, title): | |
| """Get the links of an article""" | |
| article = self.get_article(title) | |
| return article.get('links', []) |