所以我试图抓取一个带有一些 CC 内容的网页,但我无法将正确的唯一选择器归零以提供 CsQuery。最初使用 Google Chrome、IE 11 和 Firefox 尝试失败(仅成功获得 3/11 元素)后,我了解到 CsQuery 使用 Gecko 引擎。神奇的是,使用 Gecko 引擎本身的 Firefox 并没有给我正确的选择器(同样是 3/11 场景)。所以我试图深入挖掘。CsQuery 的 Gecko 引擎验证器更新是 2013 年 5 月 15 日发布的。所以我搜索了当时的 firefox 版本(21,发布于 2013 年 5 月 14 日)。我使用它,只是对相同的结果感到失望。(3/11)
那么,如何为您的项目获得正确的唯一选择器?任何提示都会对我有所帮助,我已经解决这个问题大约两周了。如果绝对必要,我可以提供网址和我的要求,但我不希望这样做。
我所说的 3/11 元素是什么意思:
CQ somePage = CQ.CreateFromUrl(someUrlHereAsString);
String someQuery1 = "div someTag:nth-child(1) someOtherTag";
String someQuery2 = "div someOtherTagNotUsedBefore";
CQ someDom = somePage[someQuery1];
CQ someOtherDom = somePage[someQuery2];
现在,如果someDom
isnull
并且someOtherDom
有一个有效的 csquery DOM 元素,我说成功获得了 1/2 个元素。