[Heritrix/crawler-beans.cxml]DISPOSITION CHAIN-warcWriter
212.Heritrix_설정파일/05. PROCESSING CHAINS 2016. 8. 1. 17:35WarcWriter
- WARC/1.0 요구사항에 따라 crawl 데이터들을 warc(Web ARChive) 파일로 저장한다.
warc 포맷은 InternetArchive's ARC File Format의 개정 포맷이며 전통적으로 web crawl을 저장하기 위해 사용된다.
기존 설정 값
<bean id="warcWriter" class="org.archive.modules.writer.WARCWriterProcessor">
<!-- <property name="compress" value="true" /> -->
<!-- <property name="prefix" value="WEB" /> -->
<!-- <property name="suffix" value="${HOSTNAME}" /> -->
<!-- <property name="maxFileSizeBytes" value="1000000000" /> -->
<!-- <property name="poolMaxActive" value="1" /> -->
<!-- <property name="MaxWaitForIdleMs" value="500" /> -->
<!-- <property name="skipIdenticalDigests" value="false" /> -->
<!-- <property name="maxTotalBytesToWrite" value="0" /> -->
<!-- <property name="directory" value="${launchId}" /> -->
<!-- <property name="storePaths">
<list>
<value>warcs</value>
</list>
</property> -->
<!-- <property name="template" value="${prefix}-${timestamp17}-${serialno}-${heritrix.pid}~${heritrix.hostname}~${heritrix.port}" /> -->
<!-- <property name="writeRequests" value="true" /> -->
<!-- <property name="writeMetadata" value="true" /> -->
<!-- <property name="writeRevisitForIdenticalDigests" value="true" /> -->
<!-- <property name="writeRevisitForNotModified" value="true" /> -->
<!-- <property name="startNewFilesOnCheckpoint" value="true" /> -->
- [property에 대한 설명]
- compress : warc 파일의 압축 여부 결정 ( 압축 포맷은 gzip )
- prefix : warc 파일의 prefix 결정
- suffix : warc 파일의 suffix 결정
- maxFileSizeBytes : warc 파일 한 개의 최대 사이즈. 이 값을 넘어가면 파일을 분할하여 저장한다.
- poolMaxActive : file과의 connection을 관장하는 pool의 최대 개수. 크롤링 중간에 변경 불가능하다.
- MaxWaitForIdleMs : 추가적으로 instance를 생성하기 전에 idle writer를 기다리는 최대 시간
- skipIdenticalDigests : 이전 fetch의 identical content digest값이 동일한 값을 가지고 있을 때, 이번 fetch의 기록을 생략할 것인지에 대한 여부
- maxTotalBytesToWrite : 전체 warc 파일의 제한 사이즈. 이 값을 초과 하면 크롤링도 멈춘다. 0은 no limit를 의미한다.
- directory : warc 파일의 기본 path 설정
- storePaths : warc 파일을 저장할 경로. 만약 2개 이상의 경로를 설정할 경우 round-robin 방식으로 file들을 저장한다. 경로의 root는 directory에서 설정한 path.
- template : warc 파일 이름의 기본 형식
- writeRequests : reqeust 타입 기록을 저장할 것인지 여부.
저장 값 예시 :WARC/1.0 WARC-Type: request WARC-Target-URI: http://crawled.com/robots.txt WARC-Date: 2016-07-25T08:01:19Z WARC-Concurrent-To: <urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx> WARC-Record-ID: <urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx> Content-Type: application/http; msgtype=request Content-Length: 243 GET /robots.txt HTTP/1.0 User-Agent: Mozilla/5.0 (compatible; heritrix/3.2.0-SNAPSHOT-20140108-2049 +http://crawling.co.kr) Connection: close Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Host: crawled.kr
- writeMetadata : metadata 타입 기록을 저장할 것인지 여부.
저장 값 예시 :WARC/1.0 WARC-Type: metadata WARC-Target-URI: http://crawled.kr/robots.txt WARC-Date: 2016-07-25T08:01:19Z WARC-Concurrent-To: <urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx> WARC-Record-ID: <urn:uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx> Content-Type: application/warc-fields Content-Length: 209 force-fetch: via: http://crawled.kr/ hopsFromSeed: P sourceTag: http://crawled.kr/ fetchTimeMs: 7 charsetForLinkExtraction: ISO-8859-1 outlink: http://crawled.kr/favicon.ico I =INFERRED_MISC
- writeRevisitForIdenticalDigests : 이전 fetch 기록이 동일한 content digest를 가지고 있을 때 revisit 타입의 기록을 저장할 것인지에 대한 여부.
- writeRevisitForNotModified : 304-Not Modified 응답을 받았을 경우 revisit 타입의 기록을 저장할 것인지에 대한 여부.
- startNewFilesOnCheckpoint : checkpoint에서 file을 끝내고 새로운 파일을 다시 쓸 것인지에 대한 여부.
'212.Heritrix_설정파일 > 05. PROCESSING CHAINS' 카테고리의 다른 글
[Heritrix/crawler-beans.cxml]DISPOSITION CHAIN-disposition (0) | 2016.08.01 |
---|---|
[Heritrix/crawler-beans.cxml]DISPOSITION CHAIN-candidates (0) | 2016.08.01 |
[Heritrix/crawler-beans.cxml]FETCH CHAIN-fetchProcessors (0) | 2016.08.01 |
[Heritrix/crawler-beans.cxml]FETCH CHAIN-extractorSwf (0) | 2016.08.01 |
[Heritrix/crawler-beans.cxml]FETCH CHAIN-extractorJs (0) | 2016.08.01 |