【问题标题】:jquery / cheerio selectors : how to get text in tag b?jquery/cheerio 选择器:如何在标签 b 中获取文本?
【发布时间】:2018-03-11 12:32:11
【问题描述】:
<div class="class1">
  <div class="item-class1">
    <a href="http://www.example.com/1" target="blank" title="title1">
     <b>Test1</b>
    </a>
  </div>
</div>

我确实尝试使用此代码提取链接:

var list = [];
$('.class1 > .item-class1').find('b').each(function (index, element) {
  list.push($(element).text());
});

我做错了什么?

【问题讨论】:

  • 它对我来说很好用。你有什么问题?无论如何,尝试将您的 js 代码包装在 $(document).ready 函数中

标签: jquery web-scraping web-crawler cheerio


【解决方案1】:

你只是没有使用好的 jQuery 选择器。你必须使用.attr('href') 方法。

这是一个完整的例子:

<div class="class1">
  <div class="item-class1">
    <a class="tobelisted" href="http://www.example.com/1" target="_blank" title="title1">
     <b>Test1</b>
    </a>
  </div>
</div>
<div class="class1">
  <div class="item-class1">
    <a class="tobelisted" href="http://www.example.com/2" target="_blank" title="title1">
     <b>Test2</b>
    </a>
  </div>
</div>
<script
  src="https://code.jquery.com/jquery-3.3.1.min.js"
  integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
  crossorigin="anonymous"></script>

<script type="text/javascript">
    var list = [];
    $('.tobelisted').each(function(){
        list.push($(this).attr('href'));
    });
    console.log(list);
</script>

【讨论】:

    猜你喜欢
    • 2018-08-13
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多