1
Stack Overflowの質問からすべてのタグを返すメソッドを書きました。唯一の問題は、コレクション内の最後の項目が常に空の文字列であることです。なぜこのHtmlNodeCollectionの最後に空の文字列があるのですか?
private static async Task<IEnumerable<string>> GetQuestionTags(string url)
{
var document = await Task.Factory.StartNew(() => new HtmlWeb().Load(url));
var nodes = document.DocumentNode.SelectNodes("//*[@id=\"question\"]/table//tr[1]/td[2]/div/div[2]//a");
return nodes.Select(node => node.InnerText);
}
私はは単にコレクションに毎回最後の項目を削除することもできますが、私はそれを行う必要はありませんしたいと思います。
なぜ、コレクションの最後のアイテムとして空の文字列が存在し、そのアイテムを取得できないのですか?
を選択する; '編集タグ'私はあなたが10,000の評判を持っていないので、テキストが空白だと思います。スパンを選択し、タグだけに*、*、 'a'を選択させます。または、SE APIを使用します。選択している余分な項目は次のとおりです:http://i.imgur.com/coCLCVl.png – Rob
空の ''要素を選択しないように述語を追加しようとすることができます: '.... // a [normalize-スペース()] ' – har07
@Rob edit-tags-wrapper spanは私のために存在しません... – Albertay