2014-10-30 2 views
5

nodejs에 대한 Scrapy와 같은 것이 있는지 알고 싶습니다. 간단한 페이지 다운로드를 사용하고 cheerio를 사용하여 파싱하는 것에 대해 어떻게 생각하십니까? 거기에 더 좋은 방법이있다.Nodejs 용 도구와 같은 치료 도구?

답변

1

파이썬에서 Scrapy와 같은 전체 웹 사이트를 크롤링하고 인덱싱하는 데 필요한 강력한 솔루션을 보지 못했지만 개인적으로 웹 사이트를 크롤링하기 위해 Python Scrapy를 사용합니다.

페이지에서 데이터를 스크래핑하려면 노드 j에 casperjs이 있어야합니다. 그것은 아주 멋진 해결책입니다. 아약스 웹 사이트에서도 사용할 수 있습니다. angular-js 페이지. Python Scrapy는 ajax 페이지를 구문 분석 할 수 없습니다. 한 페이지 또는 몇 페이지의 데이터를 스크랩하기 위해 CasperJs를 사용하는 것을 선호합니다.

Cheerio은 casperjs보다 실제로 빠르지 만 아약스 페이지에서는 작동하지 않으며 casperjs와 같은 코드 구조는 없습니다. 그래서 나는 cheerio 패키지를 사용할 수있을 때도 casperjs를 선호합니다.

커피 스크립트 예제 :이 모듈을 구성 할 수 없습니다

casper.start 'https://reports.something.com/login', -> 
    this.fill 'form', 
    username: params.username 
    password: params.password 
    , true 

casper.thenOpen queryUrl, {method:'POST', data:queryData}, -> 
    this.click 'input' 

casper.then -> 
    get = (number) => 
    value = this.fetchText("tr[bgcolor= '#AFC5E4'] > td:nth-of-type(#{number})").trim() 
0

그래도 대답이 필요한 경우를 대비하여 https://www.npmjs.org/package/scrapy 나는 그것을 테스트 한 적이 없지만 도움이 될 것이라고 생각합니다. 해피 스크랩

+0

. 비즈니스 이름과 전화 번호 만 반환합니다. 나는 가능한 해결책이 Scrappy만큼 성과가 없다는 것을 발견했다. 하지만 Cheerio를 사용하면 페이지를 조작 할 수 있습니다. Jquery를 사용하는 것과 같습니다. – user2422940

관련 문제