1use chrono::prelude::*;
2
3use warc::{BufferedBody, Record, RecordType, WarcHeader, WarcWriter};
4
5fn main() -> Result<(), std::io::Error> {
6 let date = Utc::now();
7 let body = format!("wrote to the file on {}", date);
8 let body = body.into_bytes();
9
10 let mut headers = Record::<BufferedBody>::new();
11 headers.set_warc_type(RecordType::WarcInfo);
12 headers.set_date(date);
13 headers
14 .set_header(WarcHeader::IPAddress, "127.0.0.1")
15 .expect("BUG: should be a valid IP address");
16 let record = headers.add_body(body);
17
18 let mut file = WarcWriter::from_path("warc_example.warc")?;
19
20 let bytes_written = file.write(&record)?;
21
22 println!("{} bytes written.", bytes_written);
23
24 Ok(())
25}