2011-01-17 4 views

答えて

0

クラスとHTMLWebクラスを使用して、Webページを解析できます。

+0

申し訳ありませんが、私は初心者のプログラマーです。あなたは私がそれをやる方法を詳しく説明できますか? – MAS

0

あなたはそれを行うための最良の方法は、ビンAPIのために行く少しきれいにしたい場合は。 JSON/XML/SOAPのレスポンスでは、結果の各ImageにURLを取得します。これらの画像をループ内で取得したり、LINQクエリでよりうまく検索したりできます。

このPDFを参照してください。

これはどのように行うことができるかの例です。最初にget an APPIDを使用すると、APIクエリを作成できます。

この

string url = "http://api.search.live.net/xml.aspx?Appid={0}&sources={1}&query={2}"; 
string completeUri = String.Format(url, AppId, "image", "microsoft"); 
HttpWebRequest webRequest = null; 
webRequest = (HttpWebRequest)WebRequest.Create(completeUri); 
HttpWebResponse webResponse = null; 
webResponse = (HttpWebResponse)webRequest.GetResponse(); 
XmlReader xmlReader = null; 
xmlReader = XmlReader.Create(webResponse.GetResponseStream()); 

のような要求はその後、返されたデータを保持するクラスを作成します。

public class LiveSearchResultImage 
{ 
    public string Title { get; set; } 
    public string Description { get; set; } 
    public string URI { get; set; } 
    public string ImageURI { get; set; } 
    public string ThumbnailURI { get; set; } 
} 

を入力し、LINQクエリを使用して応答からデータを取得します。

XDocument data = XDocument.Load(xmlReader); 
IEnumerable<XNode> nodes = null; 
nodes = data.Descendants(XName.Get("Results", IMAGE_NS)).Nodes(); 
if (nodes.Count() > 0) 
{ 
    var results = from uris in nodes 
    select new LiveSearchResultImage 
    { 
    URI = 
    ((XElement)uris).Element(XName.Get("Url", IMAGE_NS)).Value, 
    Title = 
    ((XElement)uris).Element(XName.Get("Title", IMAGE_NS)).Value, 
    ThumbnailURI = 
    ((XElement)uris).Element(XName.Get("Thumbnail", IMAGE_NS)).Value, 
    }; 
    return results; 
} 
関連する問題