如何解决(Cheerio/Python) && 这段代码中阻止我抓取这个网站的错误在哪里?
var request = require('request');
request('https://www.nasdaq.com/market-activity/pre-market',function (error,response,body) {
if (!error && response.statusCode != 200) {
console.log(body); // Print the web page.
}
});
我在 Python 中使用 CHEERIO。
所以这个测试代码 ^ 已经不适用于网络抓取整个 html 文档模型。 我想要实现的是将第一个图表中的数据从 https://www.nasdaq.com/market-activity/pre-market 获取到单个数组中,以便我可以将其与另一个数据集合并。
这是我正在尝试修复的代码,但我不清楚我的错误在哪里,因为它不会用我的测试代码解析网站本身。
我正在尝试将股票代码放入股票代码数组,依此类推,使用我创建的 5 个数组。数组中应该只有 10 个项目,因为这是网站图表中开始的项目数。
心胸开阔!请随时让我知道如何做得更好。
var request = require('request'),cheerio = require('cheerio');
/////////////////////////////////////////////////
// Code Guide: //
// URL: https://github.com/mikeal/request //
// https://www.youtube.com/watch?v=LJHpm0J688Y //
///////////////////////////////////////////////////////
// information From: //
// https://www.nasdaq.com/market-activity/pre-market //
// ////////////////////////////////////////////////////
Tickers = [];
Names = [];
Lasts = [];
Changes = [];
Share_Volumes = [];
request('https://www.nasdaq.com/market-activity/pre-market',function(err,resp,body){
console.log('Hxxxxxxxxxxo!');
if(!error && resp.statusCode == 200){
var $ = cheerio.load(body);
console.log('Hexxxxxx!');
//Ticker
$('extended-Trading-dynamic-tables__cell extended-Trading-dynamic-tables__cell--heading','#main-content').each(function(){
var Ticker = this.text();
Tickers.push(Ticker);
});
//Name
$('extended-Trading-dynamic-tables__cell','#main-content').each(function(){
var Name = this.text();
Names.push(Name);
});
//Last
$('extended-Trading-dynamic-tables__cell extended-Trading-dynamic-tables__cell-rightalign','#main-content').each(function(){
var Last = this.text();
Lasts.push(Last);
});
//Change
$('extended-Trading-dynamic-tables__cell extended-Trading-dynamic-tables__cell-upcaret extended-Trading-dynamic-tables__cell-rightalign','#main-content').each(function(){
var Change = this.text();
Changes.push(Change);
});
//Share Volume
$('extended-Trading-dynamic-tables__cell extended-Trading-dynamic-tables__cell-rightalign','#main-content').each(function(){
var Share_Volume = this.text();
Share_Volumes.push(Share_Volume);
});
console.log(Tickers.length);
console.log(Names.length);
console.log(Lasts.length);
console.log(Changes.length);
console.log(Share_Volumes.length);
}
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。