首页 > 解决方案 > UnhandledPromiseRejectionWarning:错误:getaddrinfo ENOTFOUNDNestJS 中的错误

问题描述

我做了一个解析器来收集来自其他网站的新闻,现在我在尝试在我的 NestJS 后端项目中实现这个解析函数时遇到了错误。我需要做什么?也许问题是在使用本地服务器时尝试连接到其他网站?

import { Injectable } from '@nestjs/common';
import { Cron, CronExpression } from '@nestjs/schedule';
import { InjectRepository } from '@nestjs/typeorm';
import { TypeOrmCrudService } from '@nestjsx/crud-typeorm';
import { News } from './entity/news.entity';

@Injectable()
export class NewsService extends TypeOrmCrudService<News> {
    private newsArray: News[];

    constructor(@InjectRepository(News) newsRepository) {
        super(newsRepository);
    }

    fillNewsArray(): void {
        const axios = require('axios');
        const cheerio = require('cheerio');
        let newsArray: News[];
        const parse = async () => {
            const getHTML = async (url) => {
                const { data } = await axios.get(url);
                return cheerio.load(data);
            };

            const selector = await getHTML('https://livennov.ru/news/?PAGEN_2=1');
            selector('div.b-section-item__body').each(async (i, element) => {
                let object: News;
                const title = selector(element).find('h3.b-section-item__title').text();
                const date = selector(element).find('div.b-meta-item').text();
                const url = `https://livennov.ru${selector(element).find('a').attr('href')}`;
                const descURL = await getHTML(`https://livennov.ru${url}`);
                descURL('h2').remove();
                const imgUrl = `https://livennov.ru${descURL('.content-full-width').find('img').attr('data-src')}`;
                const descr = descURL('div.b-news-detail-body').text();
                object.headline = title;
                object.description = descr;
                object.imageUrl = imgUrl;
                object.originalUrl = url;
                object.dateTime = date;
                object.type = 'sports';
                console.log(object)
                newsArray.push(object);
            })
        }
        parse();
    }

    @Cron(CronExpression.EVERY_10_SECONDS)
    async handleCron() {
    }

}

标签: javascriptnode.jsnestjs

解决方案


推荐阅读