Warning: mkdir(): No space left on device in /var/www/hottg/post.php on line 59

Warning: file_put_contents(aCache/aDaily/2025-07-20/post/we_use_js/--): Failed to open stream: No such file or directory in /var/www/hottg/post.php on line 72
👩‍💻 Задачка по NodeJS @Node.JS [ru] | Серверный JavaScript
TG Telegram Group & Channel
Node.JS [ru] | Серверный JavaScript | United States America (US)
Create: Update:

👩‍💻 Задачка по NodeJS

Создайте приложение на Node.js, которое принимает URL в качестве аргумента командной строки, загружает HTML-контент по указанному URL, подсчитывает количество тегов на странице и сохраняет результат в tags.json.

➡️ Пример:

node app.js report https://example.com — сохраняет количество тегов HTML-страницы в файл tags.json.
node app.js print https://example.com — выводит статистику по тегам на странице в консоль.

Решение задачи ⬇️

const https = require('https');
const fs = require('fs');
const { JSDOM } = require('jsdom');

const action = process.argv[2];
const url = process.argv[3];

function fetchHtml(url) {
return new Promise((resolve, reject) => {
https.get(url, (res) => {
let data = '';
res.on('data', (chunk) => (data += chunk));
res.on('end', () => resolve(data));
}).on('error', (err) => reject(err));
});
}

async function report(url) {
try {
const html = await fetchHtml(url);
const dom = new JSDOM(html);
const tags = Array.from(dom.window.document.getElementsByTagName('*')).map(el => el.tagName);
const tagCount = tags.reduce((acc, tag) => {
acc[tag] = (acc[tag] || 0) + 1;
return acc;
}, {});

fs.writeFileSync('tags.json', JSON.stringify(tagCount, null, 2));
console.log('Статистика сохранена в tags.json');
} catch (err) {
console.error('Ошибка:', err);
}
}

async function print(url) {
try {
const html = await fetchHtml(url);
const dom = new JSDOM(html);
const tags = Array.from(dom.window.document.getElementsByTagName('*')).map(el => el.tagName);
const tagCount = tags.reduce((acc, tag) => {
acc[tag] = (acc[tag] || 0) + 1;
return acc;
}, {});

console.log('Статистика по тегам:', tagCount);
} catch (err) {
console.error('Ошибка:', err);
}
}

if (action === 'report') {
report(url);
} else if (action === 'print') {
print(url);
} else {
console.log('Используйте команды: report <URL> или print <URL>');
}

👩‍💻 Задачка по NodeJS

Создайте приложение на Node.js, которое принимает URL в качестве аргумента командной строки, загружает HTML-контент по указанному URL, подсчитывает количество тегов на странице и сохраняет результат в tags.json.

➡️ Пример:

node app.js report https://example.com — сохраняет количество тегов HTML-страницы в файл tags.json.
node app.js print https://example.com — выводит статистику по тегам на странице в консоль.

Решение задачи ⬇️

const https = require('https');
const fs = require('fs');
const { JSDOM } = require('jsdom');

const action = process.argv[2];
const url = process.argv[3];

function fetchHtml(url) {
return new Promise((resolve, reject) => {
https.get(url, (res) => {
let data = '';
res.on('data', (chunk) => (data += chunk));
res.on('end', () => resolve(data));
}).on('error', (err) => reject(err));
});
}

async function report(url) {
try {
const html = await fetchHtml(url);
const dom = new JSDOM(html);
const tags = Array.from(dom.window.document.getElementsByTagName('*')).map(el => el.tagName);
const tagCount = tags.reduce((acc, tag) => {
acc[tag] = (acc[tag] || 0) + 1;
return acc;
}, {});

fs.writeFileSync('tags.json', JSON.stringify(tagCount, null, 2));
console.log('Статистика сохранена в tags.json');
} catch (err) {
console.error('Ошибка:', err);
}
}

async function print(url) {
try {
const html = await fetchHtml(url);
const dom = new JSDOM(html);
const tags = Array.from(dom.window.document.getElementsByTagName('*')).map(el => el.tagName);
const tagCount = tags.reduce((acc, tag) => {
acc[tag] = (acc[tag] || 0) + 1;
return acc;
}, {});

console.log('Статистика по тегам:', tagCount);
} catch (err) {
console.error('Ошибка:', err);
}
}

if (action === 'report') {
report(url);
} else if (action === 'print') {
print(url);
} else {
console.log('Используйте команды: report <URL> или print <URL>');
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5


>>Click here to continue<<

Node.JS [ru] | Серверный JavaScript




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)


Warning: Undefined array key 3 in /var/www/hottg/function.php on line 115

Fatal error: Uncaught mysqli_sql_exception: Can't create/write to file '/tmp/#sql-temptable-a06e-5876a2-2757.MAI' (Errcode: 28 "No space left on device") in /var/www/hottg/function.php:216 Stack trace: #0 /var/www/hottg/function.php(216): mysqli_query() #1 /var/www/hottg/function.php(115): select() #2 /var/www/hottg/post.php(351): daCache() #3 /var/www/hottg/route.php(63): include_once('...') #4 {main} thrown in /var/www/hottg/function.php on line 216