2013-12-10 1 views
4

사이트 (또는 최상위 페이지 목록)에 스파이더를 만드는 방법을 찾고 관련 페이지에 포함 된 JS 파일이 실제로 필요한지 아니면 특정 JS 파일이 필요한 페이지인지 확인하십시오.포함 된 JavaScript 파일이 실제로 다른 페이지에 필요한지 어떻게 알 수 있습니까?

서버 측 언어는 PHP입니다. 페이지의 실제 스파이더 링은 문제가되지 않습니다.

대용량 사이트를 상속 받았습니다. 지금까지는 자바 스크립트 파일이 모든 하위 페이지에 필요한 경우 일반적으로 모든 페이지의 템플릿에 삽입된다는 규칙이있었습니다. 조건 없음. minification 없음. 연결 없음.

앞으로 우리는 require.js를 배포 할 예정이지만 이전에는 기존 페이지에서해야 할 일이 있습니다.

  • 웹 디렉토리의 30k + 파일, Google은 도메인에 대해 350k + 페이지의 색인을 생성합니다.

답변

1

js 파일이 필요한지 여부는 웹 페이지에서 원하는 데이터 또는 효과에 따라 다릅니다. 모든 사이트에서이 작업을 수행 할 일반적인 방법은없는 것 같습니다.

js 파일을로드하여 생성 된 웹 페이지에서 상품 페이지의 가격 및 재고와 같은 데이터를 가져 오려면 requests 또는 urllib2을 사용하여 html 페이지를 검색하고 구문 분석해야합니다 해당 페이지가 정적 페이지에 있는지 확인하십시오. 그렇지 않으면 데이터가 js 파일로 생성 될 수 있으므로Google 개발자 도구을 크롬에 사용하거나 방화복 을 사용하여 필요한 js 파일을 결정해야합니다.

그 외에도 사이트를 크롤링 할 때 js 파일이 필요한지 여부를 결정해야하는 다른 장면이 있는지 여부를 알 수 없습니다.

위 등의 분석 작업을 수행하지 않으려면

, 그냥 (권장) PhantomJS 같은 사이트, qtwebkit 또는 셀레늄을 크롤링 일부 머리없는 브라우저에게 기술을 사용합니다.