0
誰も私にこのノードが見つからない理由を教えてもらえますか?C#でDomDocumentを使ってTwitterを解析する
WebClient Client = new WebClient();
Stream stream =
Client.OpenRead("http://search.twitter.com/search.atom?q=JetBlueCheeps");
StreamReader reader = new StreamReader(stream);
XmlDocument doc = new XmlDocument();
XmlNamespaceManager mgr = new XmlNamespaceManager(doc.NameTable);
mgr.AddNamespace("google", "http://base.google.com/ns/1.0");
mgr.AddNamespace("openSearch", "http://a9.com/-/spec/opensearch/1.1/");
mgr.AddNamespace("", "http://www.w3.org/2005/Atom");
mgr.AddNamespace("twitter", "http://api.twitter.com/");
mgr.AddNamespace("georss", "http://www.georss.org/georss");
doc.LoadXml(reader.ReadToEnd());
XmlNodeList list = doc.DocumentElement.SelectNodes("entry", mgr);
私はすべての「エントリー」ノードを読み込むしようとしていますが、この代替方法が動作しているため、彼らは、文書中に存在している:
XmlNode fentry = doc.DocumentElement.ChildNodes[9];
while (fentry.NextSibling != null)
fentry = fentry.NextSibling;
ありがとう!
これらのXPathを他の多くのユーザーと一緒に試してみました。しかし、チップをありがとう。 – BrianO
デフォルトの名前空間をオーバーライドします。 System.Xmlはmgr.AddNamespace( ""、 "http://www.w3.org/2005/Atom")を好きではありませんでした。だから私は空の文字列があるところに私自身の名前をつけて、もちろん上記のBhargavによって提案されたXPathのバリエーションを実験しました。皆さんありがとう! @BhargavBhat – BrianO