在JavaScript中进行网页爬虫和数据清洗的过程通常包括以下步骤:
request
或axios
等HTTP库来获取网页内容。cheerio
库来加载和操作DOM元素,或者使用DOMParser
API。下面是一个简单的示例,展示了如何使用axios
和cheerio
来爬取网页内容并进行数据清洗:
const axios = require('axios');
const cheerio = require('cheerio');
// 获取网页内容
axios.get('https://example.com')
.then(response => {
const html = response.data;
// 加载HTML内容到cheerio
const $ = cheerio.load(html);
// 提取数据
const items = [];
$('div.item').each((index, element) => {
const title = $(element).find('h2.title').text().trim();
const price = parseFloat($(element).find('span.price').text().replace('$', '').trim());
items.push({ title, price });
});
// 清洗数据(例如,过滤价格低于100的项目)
const cleanedItems = items.filter(item => item.price >= 100);
// 输出清洗后的数据
console.log(cleanedItems);
})
.catch(error => {
console.error('Error fetching data:', error);
});
在这个示例中,我们首先使用axios
获取网页内容,然后使用cheerio
解析HTML并提取所需的数据。接着,我们对提取的数据进行清洗,例如去除空白字符和转换数据类型。最后,我们输出清洗后的数据。这个过程可以根据实际需求进行调整,以适应不同的爬虫任务和数据清洗需求。