2009-08-10 5 views
9

웹 분석 패키지에는 페이지 내에서의 사용자 활동에 대한 자세한 정보가 포함되어 있으며 웹 페이지 상단에 오버레이로 시각화를 표시합니다 (클릭/스크롤/상호 작용). 현재이 페이지의 라이브 렌더링이 포함 된 IFrame입니다.렌더링 된 HTML 페이지의 스크린 샷을 찍는 방법

시간이 지남에 따라 페이지가 변경되므로 이전 데이터는 더 이상 페이지의 현재 레이아웃과 일치하지 않습니다. 때때로 페이지의 스냅 샷을 찍기 위해 거미를 실행하여 다양한 버전의 페이지와의 상호 작용 기록을 유지할 수 있습니다.

우리는이 (Linux)의 작동 구현이 있지만 스냅 샷 프로세스는 파이어 폭스 창을 열고, 스크린 샷을 만들고, 스크롤하고, 병합하여 파일에 저장하는 끔찍한 파이썬/자바 스크립트/HTML 해킹입니다. 이를 위해서는 일반적으로 헤드리스 서버에 X 스택을 설치해야하며 페이지 당 1 분이 소요됩니다.

일반 웹 브라우저에서 렌더링 시간에 가까운 성능을 가진 헤드리스 구현을 선호하지만 아무것도 찾지 못했습니다.

모질라 소스를 시작점으로 사용하여 무언가를 구축하려는 운동이 있지만, 과도한 잔인 함과 유지 보수의 악몽처럼 보입니다.

제안 사항?

+0

I 이것을 위해 [wkhtmltopdf (http://code.google.com/p/wkhtmltopdf/)를 사용한다. X 서버가 필요하지만 Xvfb 만 있으면 충분하므로 기술적으로 헤드리스입니다. – jrockway

답변

1

An article on Digital Inspiration은 크로스 플랫폼이며 웹 렌더링 엔진뿐만 아니라 현재 IE 렌더링 엔진을 사용하며 Windows, natch가 필요한 IECapt을 사용합니다. Firefox의 렌더링 엔진 인 Gecko를 사용하는 것은 아닙니다.

그러나 X에서 벗어날 수 있을지는 의문입니다. CutyCapt에는 Qt가 필요하기 때문에 X 또는 Windows 설치가 필요합니다. 그리고 마찬가지로, IECapt는 Windows가 필요합니다 (또는 Linux에서 실행하려고한다면 Wine을, 그리고 X를 다시 필요로합니다). Qt, Gtk, GDI 또는 Cocoa가 필요없는 렌더링 엔진을 찾을 수 있을지 의심 스럽기 때문에 디스플레이 라이브러리를 완전히 설치해야합니다.

+0

Xvfb와 호환됩니다. – jrockway

+0

@jrockway : 당신의 선례가 무엇인지 모르겠지만 요점을 놓칠 수도 있습니다. 여기에 반대하는 것은 물리적 인 화면이 필요하다는 사실이 아니라 터미널 서비스만을 위해 사용되는 기계상의 그래픽 인터페이스를 지원하는 막대한 양의 추가 라이브러리가 설치되는 것입니다. –

0

왜 클라이언트로 보내지는 HTML을 저장하지 않습니까? 그런 다음이를 사용하여 웹 브라우저에서 페이지를 다시 표시하여 모양을 표시 할 수 있습니다.

사용 작업에 대한 웹 분석가 데이터를 사용하면 클라이언트가 가지고있는 값으로 콤보 상자, 필드 등을 기본값으로 사용할 수 있으며 버튼 등의 CSS를 변경하여 푸시 된 것으로 표시 할 수도 있습니다.

X 스택이 필요하지 않으므로 이미지를 크롤링하거나 저장할 필요가 없습니다.

EDIT (재 앤드류 무어) :

이렇게하면 버전 번호에서 현재 CSS/이미지를 저장 이었나이다. HTML의 주석에 쉽게 구문 분석 가능한 버전 번호를 입력하십시오. CSS/이미지를 변경하고 기존 이름을 사용하면 HTML 출력의 버전 번호가 증가합니다.

HTML을 저장하는 시스템은 새 복사본을 가져와 새로운 번호로 저장해야한다는 것을 알게됩니다. 다시 표시 할 때 버전 번호를 사용하여 사용할 CSS/이미지 세트를 결정하기 만하면됩니다.


우리는 현재 그들이 사용자 세션을 가지고 그들이 무슨 짓을했는지에 따라 수있는 그들이, 우리의 헬프 데스크를 호출 할 때 그래서 우리는 더 나은 지원을 사용자 활동을 추적하고 제공 할 수있는 매우 비슷한 시스템을 사용하여 여기에 시스템을 가지고도 어떤 - 살지.

코드를 저장할 때 민감한 필드를 자동 검측 할 수 있습니다.

+0

그들은 레이아웃과 CSS/이미지를 크게 바꿀 때까지 계속 작동합니다. –

+0

수정을 고려 중입니다. 이제는 파일을 구문 분석하고 상대 경로/절대 경로를 수정하여 올바르게 표시 할 수있는 추가 문제가 있습니다. 이미지 경로가 간단합니다. –

+0

맞습니다만 그렇게 어렵지는 않습니다. 나는 페이지를 렌더링하고 이미지를 얻는 것이 실제로 가장 쉬운 방법임을 알지 못한다. 최악의 경우 각 사용자 세션마다 모든 CSS를 저장할 수 있으며 이미지를 변경하면 이름도 변경됩니다. 또는 처음부터 상대 경로를 통해 모든 것을 사용해야합니다. 즉, HTML을 올바르게 전달할 경우 HTML의 경로를 변경할 필요가 없습니다. 우리는 여기에서 그것을했고 초기 db 문제를 제외하고는 매력처럼 작동합니다. –

0

귀하의 요구 사항에 따라 아마도 많은 무료 웹 페이지 축소판 서비스 중 하나를 사용하여 벗어날 수 있습니까? 예를 들어, snapcasa을 사용하면 월간 수천 개를 생성 할 수 있습니다./광고 비용없이 광고를 게재 할 수 있습니다. (사용하지 않고 그냥 '무료 썸네일 서비스'로 검색).

단지 thot

관련 문제