-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Karma
félisten
Nem véletlenül írtam privátot, hogy kifejtem bővebben

No de (hahaha), akkor következzen egy egyszerű példa a te feladatodra. Egy plusz modul kell hozzá, a when. Ott kezdődik a dolog, hogy a requestből készíteni kell egy olyan változatot, ami callback függvény helyett egy ígérettel tér vissza.
(Az ígéret egy olyan objektum, ami majd valamikor a jövőben fog kiértékelődni, vagy sikeresen, vagy nem. Mindkét ágra fel lehet iratkozni külön, és ha láncba fűzi őket az ember, akkor úgy viselkedik, mint a rendes függvényhívások - az eredmények lépésről lépésre átpasszolódnak, a hiba meg az egészet megszakítja.)
Szóval a request függvényt be kell foglalni (ezt csinálja a requestP függvény), utána mehet a lényeg. Bátorkodtam kicsit egyszerűsíteni a kigyűjtésen, ha már van a cheerionak is map függvénye.
var when = require('when'),
cheerio = require('cheerio'),
request = require('request');
function requestP(url) {
return when.promise(function (resolve, reject) {
request(url, function (err, res, body) {
if (err) {
return reject(err);
} else if (res.statusCode !== 200) {
err = new Error("Unexpected status code: " + res.statusCode);
err.res = res;
return reject(err);
}
resolve(body);
});
});
}
requestP('https://news.ycombinator.com')
.then(function (html) {
var $ = cheerio.load(html);
return $('span.comhead').map(function (i, element) {
return $(element).prev();
});
})
.then(function (articles) {
console.log(articles);
})
.catch(console.error);
Új hozzászólás Aktív témák
- Cifu: Űrhajózás 2025 - Összefoglaló írás
- Adatvédelem kontra kényelem: ha kérik, a Microsoft kiadja a kulcsokat
- Lexus, Toyota topik
- Arc Raiders
- Genshin Impact (PC, PS4, Android, iOS)
- Mini-ITX
- Eredeti játékok OFF topik
- Kertészet, mezőgazdaság topik
- Hobby elektronika
- 3D nyomtatás
- További aktív témák...
- Dell XPS 9380, 13,3" UHD/4K Touch, I7-8665U CPU, 16GB DDR4, 256GB-1TB SSD, W11, Számla, 1 év garanci
- Dell XPS 9380, 13,3" UHD/4K Touch, I7-8665U CPU, 16GB DDR4, 256GB-1TB SSD, Új akku, W11, Számla, 1 é
- Eladó Konfig I7 13700K 32GB DDR5 1TB SSD RX6800XT 16GB!
- Erős gamer / workstation PC RTX 5070 Ti, 64GB RAM, Ryzen 9
- Dell Latitude 7340 2-in-1 i5 13.gen, 16GB DDR5, 512GB SSD, QHD+ érintőkijelző, ÚJ ÁLLAPOT!
- Apple iPhone 14 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA! Épített KomPhone Ultra 9 285K 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- Felsőkategóriás Gamer PC! Csere-Beszámítás! R9 9800X3D / RTX 5080 16GB / 32GB DDR5 / 2TB SSD!
- Xiaomi Redmi 15 / 6/128GB / Kártyafüggetlen / 12Hó Garancia
- HIBÁTLAN iPhone 15 Pro 128GB Natural Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4401
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


