static void Main(string[] args)
        {
            string[] text = System.IO.File.ReadAllText("D:\\Eclips projects\\wiki-surf-dev-project\\WikiSurfCore\\WikiProcess\\words.txt").Replace("\r", "").Split('\n');
            using (var db = new WikiSurfCore.WikiSurfContext())
            {
                var wiki = new Wiki("TheNameOfMyBot/1.0", "en.wikipedia.org", "https://en.wikipedia.org/w/api.php");


                foreach (var row in text)
                {
                    var pages = wiki.Query.search(row.Trim())
                                .Select(x => x.title)
                                .ToList()
                                .Where(x => x.Trim().ToLower() == row.Trim().ToLower())
                                .ToList();
                    if (pages.Count > 0)
                    {
                        if (db.WordBanks.FirstOrDefault(x => x.Word == row.Trim()) == null)
                        {
                            db.WordBanks.Add(WordBank.AddWord(row.Trim()));
                            db.SaveChanges();
                        }
                    }
                }
            }
        }
Example #2
0
        private void AddWordElements(WordBank wordBank)
        {
            Console.WriteLine("Adding base words...");

            var symbolMapProvided             = !string.IsNullOrWhiteSpace(_symbolMap);
            ICharacterModifier symbolModifier = null;

            if (symbolMapProvided)
            {
                symbolModifier = new CharacterSymbolModifier(_symbolMap);
            }
            var caseModifier = new CharacterCaseModifier();

            foreach (var inputElement in _inputElements)
            {
                WordElement wordElement = new WordElement(inputElement.Key);

                Console.Write($"Word: '{inputElement.Key}'");

                var characterModifiers = new List <ICharacterModifier>();
                if (symbolMapProvided && inputElement.Value.SymbolVariation)
                {
                    Console.Write(" + symbol substitution");
                    wordElement.AddCharacterModifier(symbolModifier);
                }
                if (inputElement.Value.CaseVariation)
                {
                    Console.Write(" + case variation");
                    wordElement.AddCharacterModifier(caseModifier);
                }

                Console.Write(" ... ");
                wordElement.GenerateCharacterVariations();
                Console.WriteLine($"{wordElement.Count} variants");
                wordBank.AddWord(wordElement);
            }

            Console.WriteLine();
        }