菜鸟教程小白 发表于 2022-12-13 03:58:51

html - Hpple 使用 Objective-C 解析 HTML


                                            <p><p>我已按照 <a href="http://www.raywenderlich.com/14172/how-to-parse-html-on-ios" rel="noreferrer noopener nofollow">RayWendErlich</a> 的教程进行操作解析 HTML 节点。 </p>

<p>我从 <code>index.html</code> 获取内容。
我尝试使用此方法获取 <strong>background</strong> 值。</p>

<pre><code>+ (void)parseWithHTMLString:(NSString *)string
{
NSData *data = ;
TFHpple *parser = ;

NSString *XpathQueryString = @&#34;//div/div/div&#34;;
NSArray *nodes = ;
NSLog(@&#34;%@&#34;,nodes);

NSMutableArray *resultArray = [ initWithCapacity:0];
for (TFHppleElement *element in nodes) {
    Model *model = [ init];
    model.colorString = ;
    ;
    //NSLog(@&#34;%@&#34;,model.colorString);
}
}
</code></pre>

<p><strong>所以问题是:</strong></p>

<p>我做错了什么?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您的代码中有 2 个小错误。</p>

<ol>
<li>您使用的 xPath 不正确。您在 <code>class</code> 前面缺少一个 <code>@</code>。</li>
<li><code>background</code> 键是一个属性,所以你需要向 <code>TFHppleElement</code> 询问它的 <code>attributes</code> 属性(这是一个字典)并得到它的值通过 <code>objectForKey:</code>.</li>
</ol>

<p>这是最终代码:</p>

<pre><code>NSArray *nodes = /div/div&#34;];

for (TFHppleElement *element in nodes) {
    NSLog(@&#34;%@&#34;,);
}
</code></pre>

<p>控制台输出为:</p>

<blockquote>
<p>background: #D93D59<br/>
background: #E7923D<br/>
background: #768479<br/>
background: #EBBA95<br/>
background: #E26967<br/>
background: #BF343F<br/>
background: #254159<br/>
background: #F2F2F2<br/>
background: #D9A577<br/>
background: #BF8969<br/>
background: #04000D<br/>
...</p>
</blockquote></p>
                                   
                                                <p style="font-size: 20px;">关于html - Hpple 使用 Objective-C 解析 HTML,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/27468087/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/27468087/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: html - Hpple 使用 Objective-C 解析 HTML