public override ThumbnailInfo GetThumbnailInfo(string url, PostClass post) { var apiUrl = base.ReplaceUrl(url); if (apiUrl == null) { return(null); } var http = new HttpVarious(); var src = ""; var imgurl = ""; string errmsg; if ((new HttpVarious()).GetData(apiUrl, null, out src, 0, out errmsg, MyCommon.GetUserAgentString())) { var sb = new StringBuilder(); var xdoc = new XmlDocument(); try { xdoc.LoadXml(src); var status = xdoc.SelectSingleNode("/nicovideo_thumb_response").Attributes["status"].Value; if (status == "ok") { imgurl = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/thumbnail_url").InnerText; //ツールチップに動画情報をセットする string tmp; try { tmp = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/title").InnerText; if (!string.IsNullOrEmpty(tmp)) { sb.Append(Properties.Resources.NiconicoInfoText1); sb.Append(tmp); sb.AppendLine(); } } catch (Exception) { } try { tmp = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/length").InnerText; if (!string.IsNullOrEmpty(tmp)) { sb.Append(Properties.Resources.NiconicoInfoText2); sb.Append(tmp); sb.AppendLine(); } } catch (Exception) { } try { var tm = new DateTime(); tmp = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/first_retrieve").InnerText; if (DateTime.TryParse(tmp, out tm)) { sb.Append(Properties.Resources.NiconicoInfoText3); sb.Append(tm.ToString()); sb.AppendLine(); } } catch (Exception) { } try { tmp = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/view_counter").InnerText; if (!string.IsNullOrEmpty(tmp)) { sb.Append(Properties.Resources.NiconicoInfoText4); sb.Append(tmp); sb.AppendLine(); } } catch (Exception) { } try { tmp = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/comment_num").InnerText; if (!string.IsNullOrEmpty(tmp)) { sb.Append(Properties.Resources.NiconicoInfoText5); sb.Append(tmp); sb.AppendLine(); } } catch (Exception) { } try { tmp = xdoc.SelectSingleNode("/nicovideo_thumb_response/thumb/mylist_counter").InnerText; if (!string.IsNullOrEmpty(tmp)) { sb.Append(Properties.Resources.NiconicoInfoText6); sb.Append(tmp); sb.AppendLine(); } } catch (Exception) { } } else if (status == "fail") { var errcode = xdoc.SelectSingleNode("/nicovideo_thumb_response/error/code").InnerText; errmsg = errcode; imgurl = ""; } else { errmsg = "UnknownResponse"; imgurl = ""; } } catch (Exception) { imgurl = ""; errmsg = "Invalid XML"; } if (!string.IsNullOrEmpty(imgurl)) { return(new ThumbnailInfo() { ImageUrl = url, ThumbnailUrl = imgurl, TooltipText = sb.ToString().Trim() }); } } return(null); }