"image"src="http://g-ecx.images-amazon.com/images/G/01/x-locale/nav2/images/add-to-cart-md-p._V192250398_.gif"align="absmiddle"alt="Add to cart"border="0"css string">"21"name="submit.addToCart"css string">"112"/>
可以通过:
?
1
2
htmlDoc = crl.htmlToHtmlDoc(respHtml);
HtmlNodeCollection postItemNodeList = htmlDoc.DocumentNode.SelectNodes("//form[starts-with(@action, ‘/gp/item-dispatch/ref=‘) and @method=‘POST‘]");
搜索到form节点,但是结果其下,再去搜input节点:
?
1
HtmlNodeCollection inputTypeNodeList = postItemNode.SelectNodes(".//input[@type=‘hidden‘ and @name and @value]");
竟然得到的inputTypeNodeList是null:
即form下面,没有找到任何的child,即,所有的input节点,都丢失了!
再回去查看postItemNode,结果其下就是没有child的:
所以,应该是对应的HtmlAgilityPack的bug。
【折腾过程】
1. 后来看到:
No child nodes for FORM object
中提到了,说是:
In Html specification form tag can overlap, so Htmlagilitypack handle this node a little different. 。。。
After adding this call all form elements are added as children.
本文对比了杜甫《喜晴》的两种英文翻译版本:a. Pleased with Sunny Weather 和 b. Rejoicing in Clearing Weather。a 版由 alexcwlin 翻译并经 Adam Lam 编辑,b 版则由哈佛大学的宇文所安教授 (Prof. Stephen Owen) 翻译。 ...
[详细]