Node爬虫项目精简版 wallhaven网站实操 2023.8.29

这篇具有很好参考价值的文章主要介绍了Node爬虫项目精简版 wallhaven网站实操 2023.8.29。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Node爬虫项目精简版 wallhaven网站实操 2023.8.29,独立开发者,爬虫
练习地址: https://wallhaven.cc/toplist

Node爬虫项目精简版 wallhaven网站实操 2023.8.29,独立开发者,爬虫文章来源地址https://www.toymoban.com/news/detail-683468.html

const express = require('express');
const axios = require('axios');
const cheerio = require('cheerio');
const schedule = require('node-schedule');
const fs = require('fs');

async function downloadImage(url) {
    const response = await axios.get(url, {responseType: 'arraybuffer'});
    return response.data;
}
async function saveImage(url, path) {
    const image = await downloadImage(url);
    fs.writeFileSync(path, image);
}
async function AccessToResources(url) {
    try {
        const response = await axios.get(url);
        const $ = cheerio.load(response.data);
        const images = [];
        $('a.preview').each((i, el) => {
            const img = $(el).attr('href');
            if (!img) return;
            images.push(img);
        });
        for (let i = 0; i < images.length; i++) {
            const date = new Date();
            const response = await axios.get(images[i]);
            const $ = cheerio.load(response.data);
            const img = $('img#wallpaper').attr('src');
            const fileName = date.getTime();
            await saveImage(img, `./images/${fileName}.jpg`)
        }
    } catch (e) {
        console.log('e');
    }
}

const rule = new schedule.RecurrenceRule();
rule.hour = [1, 2, 3, 4, 5, 6];
rule.minute = 0;
const url = 'https://wallhaven.cc/toplist';
const job = schedule.scheduleJob(rule, function () {
    console.log('开始执行任务', rule.hour)
    AccessToResources(url);
});
AccessToResources(url);

const app = express();
app.use(express.static('images'));
app.get('/', (req, res) => {
    res.send('Hello World!');
})
app.listen(1234, () => {
    console.log('server is running at http://localhost:1234');
})

到了这里,关于Node爬虫项目精简版 wallhaven网站实操 2023.8.29的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • WebSocketServer后端配置,精简版

    首先需要maven配置 然后加上配置类 这段代码是一个Spring配置类,主要作用是注册WebSocket端点,让使用了`@ServerEndpoint`注解声明的WebSocket端点能够自动注册并生效。具体来说: - `@Configuration`注解表明这是一个配置类,Spring会自动扫描并加载这个配置类。 - `@Bean`注解标记了`ser

    2024年04月11日
    浏览(36)
  • 精简版Git基础操作(快速上手)

    Git是一个开源的 分布式 版本控制系统,用于敏捷高效地处理任何或大或小的项目。 Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源代码的版本控制软件。 Git与常用的版本控制工具CVS、Subversion等不同,它采用了分布式版本库的方式,不用服务器端软件支持,各

    2024年02月11日
    浏览(36)
  • win11装安卓应用(2022精简版教程)

    目录 1.电脑版本必须是windows11 2.系统必须处于Beta预览频道 3.要保证电脑已启用虚拟化

    2024年02月07日
    浏览(54)
  • 系统架构设计师考试备考精简版(23年)!

    2023 年系统架构设计师教材已经更新到第二版,新教材移除了 UML 和 设计模式章节,加入了架构设计理论与实践部分,对于大家来说好消息是 UML 和设计模式不用再去看了。坏消息是案例、论文难度应该会加大。这是因为新版本下篇加了很多实际场景的架构分析题,很适合在案

    2024年02月11日
    浏览(40)
  • 合宙ESP32-C3精简版完全食用指南

    硬件资源 尺寸长宽 21mm*51mm 1路SPI FLASH,板载4MB,支持最高 16MB (dio 模式) 2路UART接口,UART0~UART1,其中下载口为UART0 (精简版为UART和UART1) 5 路 12 比特 ADC,最高采样率 100KSPS 1路低速SPI接口,支持主模式 1路IIC控制器 4路PWM接口,可使用任意GPIO GPIO外部管脚15路,可复用 2路贴片LED指示

    2023年04月19日
    浏览(36)
  • KubeEdge+Sedna安装全流程(超级避坑、精简版)

    k8s只需要安装在master节点上,其他的节点都不用 kubeedge的运行前提是master上必须有k8s docker只是用来发布容器pods的 calico只需要安装在master上,它是节点通信的插件,如果没有这个,master上安装kubeedge的coredns会报错。但是,节点上又不需要安装这个,因为kubeedge针对这个做了自

    2024年02月05日
    浏览(35)
  • 【课程复习-01】国科大-随机过程知识点精简版

    孙老师的随机过程课太硬了,期末6道题没一道简单的,就前面3道会一点,博主耗尽毕生所学尽力了,希望老师别挂我。 常见分布的概率密度和分布 0-1分布 二项分布 泊松分布 几何分布 均匀分布 指数分布 概率密度函数: 称X服从参数为θ的指数分布 分布函数: 均值: E (

    2024年01月18日
    浏览(39)
  • 3D-Resnet-50 医学图像分类(二分类任务)torch代码(精简版)-图像格式为NIFTI

    img_list格式如下 E:...3.nrrd E:...3.nrrd 0 E:...4.nrrd E:...4.nrrd 1 训练代码

    2024年02月12日
    浏览(37)
  • 安装 Kali NetHunter (完整版、精简版、非root版)、实战指南、ARM设备武器化指南、andrax、安卓渗透drozer

    From:https://www.kali.org/docs/nethunter/ NetHunter 实战指南:https://www.vuln.cn/6430 乌云 存档:https://www.vuln.cn/wooyundrops Net(网络),hunter(猎人)、Kali NetHunter 是基于 Kali Linux 且免费开源的移动设备的渗透测试平台,适用于 Android 设备。运行的原理是 Android手机的 Chroot 方式。现在 Ka

    2024年04月16日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包