2
나는 nodejs와 그 2 개의 모듈 요청 및 cheerio를 사용하여 웹 사이트를 긁어 모으고있는 간단한 웹 앱을 만들려고합니다. URL 목록을 만들 그것은 웹 사이트하지만 난 정말 여기에서하려고에 사진의 URL을 인쇄 잘 작동노드가있는 웹 페이지를 긁어 모으는 URL을 반환
var printURL=function(url){
request(url, (function() {
return function(err, resp, body) {
if (err)
throw err;
$ = cheerio.load(body);
$('img').each(function(){
console.log($(this).attr('src'));
});
}
})());
};
된다
나는 다음과 같은 코드로 할 관리 나는 그 기능의 외부에서 사용할 수 있습니다. 나는이 방법을 시도했지만 빈 목록을 반환
var urlList=[];
var printURL=function(url){
request(url, (function() {
return function(err, resp, body) {
if (err)
throw err;
$ = cheerio.load(body);
$('img').each(function(){
urlList.push($(this).attr('src'));
});
}
})());
};
어떻게이 문제를 해결할 수 있습니까? 많은 감사
코드가 제대로 작동합니다. 그러나 나는 그것이 어떻게 작동 하는지를 확신 할 수 없다. 논리를 좀 더 자세히 안내해 주시겠습니까? 고마워요. – Spearfisher
코드는 작성한 순서대로 실행되지 않습니다. 비동기 함수는 노드가해야 할 작업을 마칠 때 호출됩니다. 여기에 유용한 링크가 있습니다. http://stackoverflow.com/questions/2353818/how-do-i-get-started-with-node-js – TheHippo