gpt4 book ai didi

javascript - 使用 Node Js 进行网页抓取 -
    标签

转载 作者:行者123 更新时间:2023-11-28 03:53:16 24 4
gpt4 key购买 nike

我正在尝试抓取股票市场网页以获取 href 链接的标题。我没有得到任何输出。我试着调用类(class),身份证等。我看到标签分配了 $0。我在控制台命令行中输入了这个,但它只显示了同样的东西。

我正在尝试从 html 中获取文本“Bulk Deals”。如果我能弄清楚这是如何完成的,我就可以继续。

代码:

  var cheerio = require('cheerio');
var request = require('request');

var url ="http://feeds.feedburner.com/nseindia/CMDailyReport";
request(url, function(err, resp, body){
var $ = cheerio.load(body);
$(".regularitem .itemtitle").each(function(){
var link = $(this);
var text = link.text();
var href = link.attr("href");

console.log(text + href);

});

});
    <ul>
<li xmlns:dc="http://purl.org/dc/elements/1.1/" class="regularitem">
<h4 class="itemtitle">
<a href="http://feedproxy.google.com/~r/nseindia/CMDailyReport/~3/P9Aw3__Tm9M/bulk.csv">Bulk Deals</a></h4>
<h5 class="itemposttime"></h5>
<div class="itemcontent" name="decodeable"><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:yIl2AUoC8zA">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?d=yIl2AUoC8zA" border="0">
</a>
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:F7zBnMyn0Lo">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?i=P9Aw3__Tm9M:Clpwmq7B-_I:F7zBnMyn0Lo" border="0">
</a>
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:qj6IDK7rITs">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?d=qj6IDK7rITs" border="0">
</a>
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:gIN9vFwOqvQ">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?i=P9Aw3__Tm9M:Clpwmq7B-_I:gIN9vFwOqvQ" border="0">
</a>
</div>
<img src="http://feeds.feedburner.com/~r/nseindia/CMDailyReport/~4/P9Aw3__Tm9M" height="1" width="1" alt="">
</div>
</li>

最佳答案

当你做 $(".regularitem .itemtitle") , 你会得到 <h4>而不是其中的链接 ( <a>)。

要获得“批量交易”,您可以在浏览器中执行以下操作(或单击“运行代码片段”按钮):

var html = `<li xmlns:dc="http://purl.org/dc/elements/1.1/" class="regularitem">
<h4 class="itemtitle">
<a href="http://feedproxy.google.com/~r/nseindia/CMDailyReport/~3/P9Aw3__Tm9M/bulk.csv">Bulk Deals</a></h4>
<h5 class="itemposttime"></h5>
<div class="itemcontent" name="decodeable"><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:yIl2AUoC8zA">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?d=yIl2AUoC8zA" border="0">
</a>
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:F7zBnMyn0Lo">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?i=P9Aw3__Tm9M:Clpwmq7B-_I:F7zBnMyn0Lo" border="0">
</a>
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:qj6IDK7rITs">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?d=qj6IDK7rITs" border="0">
</a>
<a href="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?a=P9Aw3__Tm9M:Clpwmq7B-_I:gIN9vFwOqvQ">
<img src="http://feeds.feedburner.com/~ff/nseindia/CMDailyReport?i=P9Aw3__Tm9M:Clpwmq7B-_I:gIN9vFwOqvQ" border="0">
</a>
</div>
<img src="http://feeds.feedburner.com/~r/nseindia/CMDailyReport/~4/P9Aw3__Tm9M" height="1" width="1" alt="">
</div>
</li>`
var parser = new DOMParser();
var doc = parser.parseFromString(html, "text/html");

Array.from(doc.querySelectorAll(".regularitem .itemtitle")).forEach(function(h4) {
var link = h4.getElementsByTagName('a')[0];
console.log(link.innerHTML);
});

希望对你有帮助

最好的问候

关于javascript - 使用 Node Js 进行网页抓取 - <ul> 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43617338/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com