忽略某些div中的元素

时间:2015-12-02 09:15:22

标签: ruby web-scraping nokogiri

我编写了一个基本的Web抓取工具,它从网页中提取短文本并将其放入列表中。我的问题是,页面上会出现动态广告并搞砸列表。 我抓的页面是Yelp餐厅列表页面。

我拿出商家名称(商家名称)并将其添加到列表中并且工作正常但是当广告出现时,刮刀也会拉出商品名称。

这是结构,但我无法弄清楚如何忽略' AD元素'并且只是刮掉正常的商业名称。我已经把它砍了很多,并删除了不重要的'元件。

这是AD:

<li class="yloca-search-result">
   ...
      ... 
         <a class="biz-name"...><span>San Lorenzo’s</span></a>
</li>

这是正常的列表:

<li class="regular-search-result">
   ...
      ...
         <a class="biz-name"...><span>BigGrill</span></a>
</li>

我一直试图让Nokogiri忽略<li class="yloca-search-result">中的商家名称,只选择regular-search-result类中的其他商家名称。 我无法弄明白。有人能指出我至少正确的方向吗?有可能吗?

1 个答案:

答案 0 :(得分:0)

我明白了。并不难,但我看不出答案。

Int