Chrome에서 HTML을보고 Nokogiri를 사용하여 데이터를 가져 와서 사이트를 긁어 내려합니다. 문제는 일부 태그가 동적으로 생성되어 open-uri를 사용할 때 open (url) 요청과 함께 표시되지 않는다는 것입니다. 읽는 오픈 URI와 같은 도구에 대한 콘텐츠를 동적으로 생성하도록 사이트를 "강제 적용"할 수있는 방법이 있습니까?Nokogiri/Open URI로 동적으로 생성 된 HTML
5
A
답변
4
open-uri를 통해 읽는 것이 필요한 콘텐츠를 생성하지 못하면 클라이언트가 자바 스크립트로 콘텐츠를 생성 할 가능성이 있습니다.
이것은 좋은 소식 일 수 있습니다. 페이지가 만드는 AJAX 요청을 검사하여 원하는 콘텐츠의 JSON 피드를 찾은 다음 직접 요청하고 구문 분석 할 수 있습니다. 이렇게하면 HTML을 파헤 치지 않고도 데이터를 얻을 수 있습니다.
그러나 어떤 이유로 작동하지 않는다면 브라우저의 일종으로 페이지를 열어야하고 클라이언트 측 자바 스크립트를 실행 한 다음 결과 DOM을 HTML로 덤프해야합니다. PhantomJS과 같은 것은 이러한 종류의 작업에 탁월한 선택입니다.
+0
팁 # 1은 나에게 많은 시간을 절약 해주었습니다. –
관련 문제
- 1. 동적으로 생성 된 HTML 버튼
- 2. 피라미드를 통해 동적으로 생성 된 HTML 렌더링
- 3. 동적으로 생성 된 html 요소에 onmousedown
- 4. 동적으로 생성 된 HTML 테이블의 팝업 메시지
- 5. 동적으로 생성 된 HTML 테이블 정렬
- 6. Android 앱에서 동적으로 생성 된 HTML 스크랩하기
- 7. 동적으로 생성 된 html 요소가 작동을 멈춤
- 8. 동적으로 생성 된 iframe에 HTML 스 니펫로드
- 9. 동적으로 생성 된 HTML 마크 업의 인코딩
- 10. 동적으로 HTML/ASP 생성
- 11. 마지막 동적으로 생성 된 HTML 행을 생성 JQuery와
- 12. 동적으로 생성 된 Ajax.BeginForm
- 13. 동적으로 생성 된 HTML 문서를 HTML 문서에 임베드하는 방법은 무엇입니까?
- 14. Eclipse에서 URI로 WebService 클라이언트 생성
- 15. 동적으로 생성 된 링크로 동적으로 HTML을 업데이트합니다.
- 16. 자바 스크립트 및 HTML - 동적으로 생성 된 클래스 내에서 동적으로 생성 된 서브 클래스를 수정
- 17. 동적으로 생성 된 HTML 페이지에 혼합 된 내용 표시
- 18. 동적으로 생성 된 뷰 그룹을 동적으로 생성 된 버튼으로 제거합니다.
- 19. 동적으로 생성 된 QRadioButton을 사용하여 동적으로 생성 된 객체를 토글합니다.
- 20. 각도 동적으로 HTML 파일을 생성
- 21. 동적으로 생성 HTML 액션 링크
- 22. 동적으로 생성 된 연산자
- 23. 동적으로 생성 된 클래스?
- 24. 동적으로 생성 된 종속성
- 25. 동적으로 생성 된 CSS
- 26. 동적으로 생성 된 TABLENAME
- 27. 동적으로 생성 된 배열
- 28. 동적으로 생성 된 클래스
- 29. 동적으로 생성 된 GUI
- 30. 동적으로 생성 된 스트림
[mechanize] (http://mechanize.rubyforge.org/)를 살펴보십시오. 나는 네가 원하는 것을 할 수도 있다고 생각해. – Aaronneyer
*이 사이트가 콘텐츠를 생성하는 방법 *에 따라 JavaScript를 먼저 실행해야 할 수도 있습니다. – tessi
가끔씩 복잡한 웹 사이트에서 기계화가 진행됩니다. JRuby가 옵션이고 기계화가 작동하지 않는다면 [Celerity] (http://celerity.rubyforge.org/)도 살펴볼 것입니다. – yonosoytu