Xamarin.Forms:DocumentNode.Descendants return 在 Android 设备上为空
Xamarin.Forms: DocumentNode.Descendants return null at Android device
我使用 Xamarin.Forms 和 HTML Agility Pack 来解析我的 HTML。在 Windows UWP 它工作并且我得到一个带有 'a' 的节点,带有 Android 目标我得到空结果。
我的目标是获取视频文件的名称。
var nodes = doc.DocumentNode.Descendants("a").FirstOrDefault(x => x.Attributes.Contains("class") && x.Attributes["class"].Value == "mediafallbacklink");
doc.DocumentNode.Descendants().First() 也为空。
是 HTML 和 Android 设备的问题吗?如果是这样,为什么?
<div class="no-overflow"><p><p>This is a test.</p><p><span class="mediaplugin mediaplugin_qt">
<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="400" height="315">
<param name="pluginspage" value="http://www.apple.com/quicktime/download/">
<param name="src" value="video_2016-06-24_19-12-25.mov">
<param name="controller" value="true">
<param name="loop" value="false">
<param name="autoplay" value="false">
<param name="autostart" value="false">
<param name="scale" value="aspect">
<!--[if !IE]><!-->
<object data="video_2016-06-24_19-12-25.mov" type="video/quicktime" width="400" height="315">
<param name="src" value="video_2016-06-24_19-12-25.mov">
<param name="pluginurl" value="http://www.apple.com/quicktime/download/">
<param name="controller" value="true">
<param name="loop" value="false">
<param name="autoplay" value="false">
<param name="autostart" value="false">
<param name="scale" value="aspect">
<!--<![endif]-->
<a class="mediafallbacklink" href="video_2016-06-24_19-12-25.mov">video_2016-06-24_19-12-25.mov</a>
<!--[if !IE]><!-->
</object>
<!--<![endif]-->
</object>
</span><br></p><br><p></div>
我找到了解决方案,'var nodes' 在 Android 设备上进行调试时始终为 null,但数据在那里。一切正常。
我使用 Xamarin.Forms 和 HTML Agility Pack 来解析我的 HTML。在 Windows UWP 它工作并且我得到一个带有 'a' 的节点,带有 Android 目标我得到空结果。
我的目标是获取视频文件的名称。
var nodes = doc.DocumentNode.Descendants("a").FirstOrDefault(x => x.Attributes.Contains("class") && x.Attributes["class"].Value == "mediafallbacklink");
doc.DocumentNode.Descendants().First() 也为空。
是 HTML 和 Android 设备的问题吗?如果是这样,为什么?
<div class="no-overflow"><p><p>This is a test.</p><p><span class="mediaplugin mediaplugin_qt">
<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" width="400" height="315">
<param name="pluginspage" value="http://www.apple.com/quicktime/download/">
<param name="src" value="video_2016-06-24_19-12-25.mov">
<param name="controller" value="true">
<param name="loop" value="false">
<param name="autoplay" value="false">
<param name="autostart" value="false">
<param name="scale" value="aspect">
<!--[if !IE]><!-->
<object data="video_2016-06-24_19-12-25.mov" type="video/quicktime" width="400" height="315">
<param name="src" value="video_2016-06-24_19-12-25.mov">
<param name="pluginurl" value="http://www.apple.com/quicktime/download/">
<param name="controller" value="true">
<param name="loop" value="false">
<param name="autoplay" value="false">
<param name="autostart" value="false">
<param name="scale" value="aspect">
<!--<![endif]-->
<a class="mediafallbacklink" href="video_2016-06-24_19-12-25.mov">video_2016-06-24_19-12-25.mov</a>
<!--[if !IE]><!-->
</object>
<!--<![endif]-->
</object>
</span><br></p><br><p></div>
我找到了解决方案,'var nodes' 在 Android 设备上进行调试时始终为 null,但数据在那里。一切正常。