Ejemplo n.º 1
0
        public static void Main(string[] args)
        {
            // Check if page exists
            bool doesExist = Wiki.DoesPageExist("shouldnotexist"); // false

            doesExist = Wiki.DoesPageExist("snow");                // true
            doesExist = Wiki.DoesPageExist("lion");                // true
            doesExist = Wiki.DoesPageExist("nonsensepage");        // false

            // Build custom query
            QueryBuilder queryBuilder = new QueryBuilder("https://en.wikipedia.org/w/api.php?");

            queryBuilder.AppendParam("action", "query");
            queryBuilder.AppendMultiValParam("prop", new [] { "info", "description" });
            queryBuilder.AppendParam("titles", "snow");
            string result = Wiki.QueryPageName(queryBuilder);

            ParserXml parserXml = new ParserXml(result);

            // Convenience method for grabbing a page summary (first paragraph)
            string summary = Wiki.PageSummary("snow");
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Check a page exists
        /// </summary>
        /// <param name="pageTitle">Title of wiki page</param>
        /// <returns></returns>
        public static bool DoesPageExist(string pageTitle)
        {
            QueryBuilder query = new QueryBuilder(BASE_URI, Format.JSON);

            query.AppendParam("action", "query");
            query.AppendParam("titles", pageTitle);
            query.Format = Format.XML;
            string result = QueryPageName(query);

            ParserXml parserXml = new ParserXml(result);
            string    idStr     = parserXml.PageId();

            try{
                int id = Int32.Parse(idStr);
                if (id >= 0)
                {
                    return(true);
                }
            }
            catch (FormatException e) {
                return(false);
            }
            return(false);
        }