刚刚更新了我的代码,由于某种原因,console.log()
没有输出任何东西,你知道为什么吗?
它现在返回以下内容:
undefined
done
200
null
脚本:
const request = require('request');
const cheerio = require('cheerio');
request('https://kith.com/collections/footwear/products/jbaq4160-140', (error, response, html) => {
if (!error && response.statusCode == 200) {
const $ = cheerio.load(html);
const output = $(':contains("6")').attr('value');
console.log(output);
console.log('done');
}
});
发布于 2018-08-14 04:27:07
看来你认为(!error && response.statusCode == 200)
. .。在括号后面再放两个console.log。
request('https://kith.com/collections/footwear/products/jbaq4160-140', (error, response, html) => {
if (!error && response.statusCode == 200) {
const $ = cheerio.load(html);
const output = $(':contains("4.5")').attr('value');
console.log(output);
console.log('done');
}
console.log(response.statusCode);
console.log(error);
});
发布于 2018-08-14 04:51:43
添加一个用户代理头,如下所示:
var options = {
headers: {'user-agent': 'request'}
}
request('https://kith.com/collections/footwear/products/jbaq4160-140', options, function(error, response, html) => {
发布于 2018-08-16 03:00:59
在您的代码中,替换:
const output = $(':contains("4.5")').attr('value');
通过
const output = $
我怀疑您的表达式存在问题:$(':contains("4.5")').attr('value')
https://stackoverflow.com/questions/51829962
复制相似问题