Wikipedia incluye una interfaz de programación de aplicaciones para .NET, lo que puede utilizar los datos de la página web en sus propios sitios web. Los datos para la API devuelve un artículo especificado en el formato XML, por lo que debe analizar el código XML en el código. El idioma de Microsoft .NET incluye bibliotecas que analizan los datos XML devueltos desde cualquier API. Se conecta a la URL de la API, recuperado en el XML y utiliza el nodo "info_imagen" para obtener la imagen.
Instrucciones
1 Abra Visual Studio y abra el proyecto en el que desea utilizar la API de Wikipedia. Haga doble clic en el archivo de código que desea utilizar para recuperar la imagen.
2 Añadir las librerías XML en el archivo. Copia y pega el código siguiente al principio del archivo de código fuente:
using System.Xml;
utilizando System.Xml.XPath;
3 Conectarse a la API. La clase WebRequest .NET se conecta a una dirección URL y recupera la respuesta. Utilice el siguiente código para conectarse a la API de Wikipedia:
HttpWebRequest req = (HttpWebRequest) req.Create ( "http: //en.wikipedia/wiki/Special: Exportación / article_name & quot;);
req.Credentials = System.Net.CredentialCache.DefaultCredentials;
req.Accept = "text / xml";
Reemplazar "article_name" con el nombre del artículo que desea recuperar.
4 Cargar la respuesta del API en un lector de corriente XML. El lector corriente analiza automáticamente el XML, por lo que sólo hay que hacer referencia al nodo de imagen para obtener su contenido. Agregue el código siguiente después del código WebRequest:
HttpWebResponse res = (HttpWebResponse) req.GetResponse ();
Corriente leídos = res.GetResponseStream ();
lector de XmlReader = new XMLTextReader (leer);
NS String = "http://www.mediawiki.org/xml/export-0.3/" ;;
XPathDocument doc = new XPathDocument (lector);
reader.Close ();
res.Close ();
XPathNavigator nav = doc.CreateNavigator ();
XPathNodeIterator nodesIt = myXPathNavigator.SelectDescendants ( "info_imagen", NS, false);
5 Mostrar la información de la imagen. La información de la imagen se almacena en la variable "nodeslt". El siguiente código muestra la imagen:
Response.Write (odesIt.Current.InnerXml);