나는 실시간 위키 피디 편집을 스트림하는 node.js 프로젝트 (기초로 Wikistream을 사용하므로 완전히 내 코드가 아님)로 작업 중입니다. 코드는 각 편집 내용을 구성 요소로 나누고이를 객체로 저장합니다 (요지는 https://gist.github.com/2770152 참조). 부품 중 하나는 URL입니다. 각 편집을 구문 분석 할 때 사전 편집 및 편집 된 위키 백과 페이지 간의 차이점을 보여주는 각 편집의 URL을 다듬을 수 있는지 궁금합니다 (차이점을 파악하십시오 ('diff diff-inline' 예를 들어,) 객체의 다른 속성으로 추가합니다. 그것은 단지 문자열 일 수는 없으며 완전히 구조화 될 필요는 없습니다.즉시 node.js 데이터 스트림의 URL 스크랩
내가 nodeio를 사용하여 시도와 같은 일부 코드가 한 (내가 특별히 전용 (주석에 표시 한 편집을 긁어하려고를 m [6]) 가능 기물 파손 등) :
if (m[6].match(/vandal/) && namespace === "article"){
nodeio.scrape(function(){
this.getHtml(m[3], function(err, $){
//console.log('getting HTML, boss.');
console.log(err);
var output = [];
$('span.diffchange.diffchange-inline').each(function(scraped){
output.push(scraped.text);
});
vandalContent = output.toString();
});
});
} else {
vandalContent = "no content";
}
조건문을 누르면 프로그램은 한 번 긁어 내고 프로그램이 종료됩니다. 원하는 내용을 객체의 속성으로 저장하지 않습니다. 조건이 충족되지 않으면 "내용 없음"으로 설정된 vandalContent 속성이 저장됩니다.
내가 궁금해하는 점은 다음과 같습니다. 즉석에서 이처럼 긁을 수 있습니까? 프로그램을 엉망으로하는 긁는거야? 비슷한 결과를 얻을 수있는 다른 방법이 있습니까?
네, 맞습니다. (console.log에 아무것도 나오지 않습니다. 여기에 다른 문제가 있음을 나타냅니다.) 각 URL에서 콘텐츠를 긁어 모으고 각 수정 객체에 어떻게 든 첨부하는 것을 다시 생각해 볼 수있는 더 좋은 방법은 무엇일까요? 나는 노드에 상당히 익숙하다. – roy
나는이 문제에 관해서 생각해보기로하겠다. 나는이 문제에 접근하는 방법을 다시 생각하는 것이 가장 좋다. 감사. – roy