1 //解析する文字列はURLエンコードする
2 String postString = String.Format("appid={0}&query={1}",
3 "xxxx",
4 HttpUtility.UrlEncode("ワンピースコレクション 変わらぬ夢と誓いスペシャル 12個入 BOX (食玩)"));
5
6 //UTF8でバイト配列にエンコードする
7 byte[] postData = Encoding.UTF8.GetBytes(postString);
8 string encstr = Encoding.GetEncoding("UTF-8").GetString(postData);
9
10 //Webリクエストを生成する
11 WebRequest webReq = WebRequest.Create("http://shopping.yahooapis.jp/ShoppingWebService/V1/itemSearch?" + encstr);
12
13 webReq.Method = "GET";
14 webReq.ContentType = "application/x-www-form-urlencoded";
15
16
17 //結果をうけとってDOMオブジェクトにする
18 WebResponse webRes = webReq.GetResponse();
19
20 XmlDocument resultXml = new XmlDocument();
21
22 using (StreamReader reader = new StreamReader(webRes.GetResponseStream()))
23 {
24 resultXml.Load(reader);
25 }
26
27 //結果XML中の[word]タグのリストを取得する
28 XmlNodeList wordList = resultXml.GetElementsByTagName("Item");
29
30 //[word]以下のノードに含まれる内容をコンソールに出力する
31 foreach (XmlNode wordNode in wordList)
32 {
33 foreach (XmlNode resultNode in wordNode.ChildNodes)
34 {
35 Console.WriteLine("node_name:{0} value:{1}", resultNode.Name, resultNode.InnerText);
36 }
37 }
|