javascript로 액세스되는 API를 통해 일부 내용을 생성하고 있으며, 브라우저에 일반 텍스트로 표시된 내용의 소스 코드를 가져올 수 없습니다. 텍스트를 강조 표시하고 선택한 텍스트 (파이어 폭스 기능)의 소스를 볼 수 있지만 CURL을 사용하여 자동으로 PHP로 데이터를 캡처합니다 ... 어떻게 데이터를 캡처 할 수 있습니까? DOM 업데이트를 통해 소스를 업데이트 할 수있는 방법이 있습니까? 어떤 도움을 주셔서 감사합니다.javascript에 의해 생성 된 내용을 자체 공개
답변
당신은 그냥 HTML 소스를 요청하고 당신이 PHP의 내용을 얻으려면 있도록 JS를 실행하지 않고 장소에있을 JS와 수정의 결과를 기대할 수 없다, 당신은해야 할 것 중 하나
-
는 자바 스크립트를 실행하는 것을 통해 HTML을 밀어
- (I 펄을 사용한다면 아마 WWW::Mechanize::Firefox에 보이는 것, 그것은 Mozrepl을 사용합니다. PHP 그것을 위해 유사한 좋은 API가 있는지 모르겠어요)
- 역 JavaScript를 처리하고 데이터를 직접 가져 오는 작업은 무엇이든하십시오.
개발자 도구 (오른쪽 상단의 공구 모양 -> 도구 -> 개발자 도구 또는 Ctrl + Shift + I (대문자 i))에서 Chrome을 사용하여 페이지 소스를 가져올 수 있습니다. 개발자 도구에 표시된 소스 코드는 페이지가 처음로드 된 후 JavaScript에 의해 동적으로 생성 된 것을 포함하여 페이지의 최신 소스 코드를 나타냅니다.
다른 브라우저에서도 비슷한 기능을 제공 할 것이라고 생각합니다. Chrome의 방법이 내 머리 꼭대기에 있다는 것을 알게되었습니다.
브라우저를 사용하고 있으면 작동하지만 CLI는 어떻게됩니까? – Blender
웹킷과 V8에서 필요한 비트와 조각을 포크하고 컴파일하십시오. 즉, JS를 지원하지 않는 것들에 대해 "사전 렌더링 된"폴백을 제공하는 것이 가장 쉬운 방법입니다. –
개발 환경이 Linux/Unix 인 경우 PjantonJS을 통합 할 수 있습니다.이 도구는 JavaScript를 실행하는 멋진 도구이며 출력을 전달합니다. 필자가 CLI PhantomJS를 실행하면 마녀의 shell_exec()
과 함께하는 것이 좋습니다.
희망이 도움이됩니다.
Windows에서도 작동해야합니다. 추가 할 수도 있습니다. –
- 1. 파이썬으로 javascript에 의해 생성 된 html 스크랩
- 2. Asp.Net에서 Javascript에 의해 생성 된 처리 요소
- 3. 양식이 javascript에 의해 업데이트 됨 누락 된 게시물 값
- 4. htmlunit -Java로 자바 스크립트에 의해 생성 된 HTML에 액세스하기
- 5. 공개 동의 생성
- 6. LinqtoSQL에 의해 생성 된 SQL 표시
- 7. ListCollectionView.AddNew에 의해 생성 된 개체 유형
- 8. JDBC에 의해 생성 된 SQL 문 수정
- 9. beginGeneratingDeviceOrientationNotifications에 의해 생성 된 메소드 호출 중지
- 10. django 템플릿에 의해 생성 된 html 코드
- 11. ggplot2에 의해 생성 된 조각 잘라내 기
- 12. 활동에서 WebView에 의해 생성 된 데이터에 액세스합니다.
- 13. xargs에 의해 생성 된 명령을 백그라운드로 보냄
- 14. Eclipse에서 Gradle에 의해 생성 된 디버깅 프로젝트
- 15. FSYacc 스레드에 의해 생성 된 파서가 안전합니까?
- 16. cgcontext에 의해 생성 된 pdf에 페이지 추가하기
- 17. DB에 의해 생성 된 기본 키가없는 Hibernate?
- 18. SOAP2ObjC에 의해 생성 된 코드의 문제점
- 19. 파일에서 Qemu에 의해 생성 된 코드 캡처
- 20. Xcode에 의해 생성 된 정적 라이브러리의 크기
- 21. 경고 UIButton 설정 코드에 의해 생성 된
- 22. mysqli_stmt_bind_param에 의해 생성 된 return 문
- 23. ContextLoaderListener에 의해 생성 된 스프링 컨텍스트의 수
- 24. 테이블 모델에 의해 생성 된 JCheckBoxes 초기화
- 25. Zend_Soap_AutoDiscover에 의해 생성 된 WSDL의 변경 이름
- 26. HttpHandler에 의해 생성 된 JS와의 보안
- 27. PHP 파일 자체 내용을 인쇄합니다
- 28. JQuery가 자체 요소에 내용을 추가합니다.
- 29. jquery에서 생성 된 div에 내용을 자동으로로드하십시오.
- 30. JavaScript에 의해 소비 될 C# 동적 객체를 JSON 객체로 serialize
디버깅을하고 소스를 검사 할 수있는 도구가 많이 있습니다.이 도구는 사용하는 브라우저에 따라 달라집니다. –
죄송합니다. 혼란스러운 질문입니다. 자바 스크립트를 사용하여 일부 콘텐츠를 생성하는 페이지가 있고 cURL을 통해 페이지를 가져올 때 동적으로 생성 된 콘텐츠를보고 싶습니까? – deceze
예, 수동 디스플레이 기술은 내가 필요로하는 것이 아닙니다. 자바 스크립트 또는 jquery 솔루션이 필요합니다. – atwellpub