我正在尝试制作一个Javascript应用程序,以便从HTML页面中获取数据。只有文本(标题,描述等)它工作正常,但由于某种原因试图找到img src URL不起作用。我的代码在下面,下面是我迄今为止尝试过的示例。
this.processDocument = function(html, url, headers, status, cheerio) {
var app = this;
var $ = cheerio;
var $html = app.parseHtml(html, $);
var object = {};
object.title = $html.find('h1').text();
object.title = this.removeExtraWhitespace(object.title);
object.image = $html.find('.event_article').find('img').attr("src");
object.copyright = $html.find('div[class="copyright"]').text();
object.intro = $html.find('.introduction').text();
object.intro = this.removeExtraWhitespace(object.intro);
return JSON.stringify(object);
}
(我试过的例子)
object.image = $html.find('.event_article').find('img').attr("src");
object.image = $html.find('.event_article img').attr("src");
object.image = $('.event_article img').attr("src");
object.image = $('.event_article img').attr("src");
object.image = $html.find('.event_article img src').text();
object.image = $(unescape($html.find('.event-article').text())).find("img").attr("src");
object.image = $('figure').find('img').attr('src')
object.image = $html.find('figure').find('img').attr('src');
object.image = $html.find($('figure img')).attr('src');
(HTML源代码)
<div class="container">
<div class="contents_wrap">
<!--main_contents------------------->
<main role="main" id="main_contents">
<div class="contents_inner">
<!--event_article-->
<section>
<article class="event_article">
<h1 class="article_title">Bread & Coffee Party</h1>
<div class="info">
<figure class="image"><img src="https://d3cx2fdgbfj572.cloudfront.net/articles/images/000/025/392/small/a49553f4-5225-4b21-bbbb-c3c983648efb.jpg?1535574526" alt="breadandcoffee"><br><span class="copyright">John Hemberly</span></figure>
提前致谢。
我不知道到底是什么问题(也测试了lazyload),但我从页面的另一部分拍摄了图像。图片也在页面顶部的'content'元标记中提到,所以我从那里得到了它。