원시인은 구문 분석하고 HTML5 캐시 매니페스트의 유효성을 검사 파이썬 패키지입니다. HTML5 애플리케이션들은 캐시 매니페스트 약 악명 피키 있으며, 그들이 있어야로 모든 구성 요소가 있는지 확인하는 것이 곤란하다.
원시인은 하나의 명령 줄 스크립트, HTML 페이지를 끌어 check_manifest, 사용 자원에 대한 긁힌 자국을 제공, 캐시 매니페스트 구문 분석 및 매니페스트에 대한 자원의 유효성을 검사합니다 :
& NBSP; check_manifest의 URL
매니페스트 문제는 표준 출력에 기록됩니다. 당신이 레벨 디버깅, 정보, 경고 또는 오류가 --level = 레벨 스위치와 다른 심각도 로그 수준을 설정하면 프로세스에 대한 더 자세한 내용이 출력됩니다.
프로그래밍 사용
원시인은 더 큰 검증 프로세스의 일부로서, 또는 웹 응용 프로그램의 단위 테스트의 일환으로, 예를 들어, 자신의 코드에서 사용할 수 있도록 설계되었습니다.
원시인의 작품은 ManifestChecker 클래스에 의해 수행된다. URL의 데이터를 가져 오는 get_url 기능, 로그 메시지를 가져 로거 개체 : 두 도우미로 인스턴스화 :
원시인 수입 ManifestChecker에서
데프 get_url (URL) : ...
로거 = ...
man_checker = ManifestChecker (get_url = get_url, 로거 = 로거)
그런 다음 HTML 페이지의 URL과의 check_manifest 메소드를 호출 :
man_checker.check_manifest (URL)
어떤 값이 반환되지 않습니다 : 출력은 로거 객체에 기록되었습니다. 자세한 내용은 소스 코드의 문서화 문자열을 참조하십시오.
장고 단위 테스트
프로그램 사용의 예를 들어, 여기 장고 테스트 스위트에서 원시인을 사용하는 한 가지 방법은 다음과 같습니다
원시인 수입 ManifestChecker에서
클래스 TestManifest (django.test.TestCase) :
& NBSP; DEF 설정 (자동) :
& NBSP; self.checker = ManifestChecker (get_url = self.get_url, 로거 = 자기)
& NBSP; self.caveman_log = []
& NBSP; 데프 get_url (자기, URL) :
& NBSP; "" ". caveman.ManifestChecker``에 대한 get_url 기능" ""
& NBSP; # URL을 가져 장고 테스트 클라이언트를 사용합니다.
& NBSP; 응답 = self.client.get (URL)
& NBSP; 반환 response.status_code, response.content, 응답
& NBSP; # 기록 self.caveman_log``에서 심각한 원시인 메시지.
& NBSP; 데프 디버그 (자기, MSG) : 패스
& NBSP; 데프 정보 (자기, MSG) : 패스
& NBSP; 데프 (자기, MSG) 경고 : self.caveman_log.append (MSG)
& NBSP; 데프 오류 (자가, MSG) : self.caveman_log.append (MSG)
& NBSP; 데프 test_my_manifest (자기) :
& NBSP는; "" "원시인 매니페스트 캐시에 대한 경고 또는 오류를 생성하지 않습니다." ""
& NBSP; self.checker.check_manifest ( "/")
& NBSP; self.assertEqual ([], self.caveman_log)
더 많은 정보
원시인은 PyPI에서 다운로드 할 수 있습니다 http://pypi.python.org/pypi/caveman
HTML5 캐시 매니페스트 사양은 http://www.w3.org/TR/html5/offline.html에있다
http://nedbatchelder.com/code/caveman에서 문서.
코드 저장소 및 이슈 트래커는 bitbucket.org에있다
요구 사항 : 있습니다.
파이썬
제한 사항 :
원시인은 사용자가 지정하는 HTML 페이지 가져옵니다. 이 매니페스트에 대한 다른 HTML 페이지에 대한 링크의 유효성을 검증하지만, 그것은 그가 연결된 페이지에 끌어와 자원을 확인하지 않습니다.
HTML5 스펙에서 특정 규칙이 확인되지 않습니다.
댓글을 찾을 수 없습니다