Use the following set of scripts to extract urls from CommonCrawl WAT files and output to a compressed txt file.
This script stack compromises of two processes running concurrently (One on the URL Extractor Server downloading, processing and zipping the results and the other stack pulling the files via rsync to a destination of your choice.)
The script can be run without the second part but the server will quickly fill if large data sets are being processed (eg; CommonCrawl WARC/WAT Files).
Before running the scripts, there are some steps required to setup the stack.
A script has been devised to automate the steps.
Run "prerequisites.sh" to setup the stack.
<b>Steps:</b>
1. Run url_extractor.py against the directory of txt.gz files you are wanting to process. The script will ask for you to enter the location of the files, where you want to store the output and the concurrency to run the script at.
2. Once the script has completed running, verify the output of the file.
There are two methods of transferring data from the server running the scripts back to a local machine being rsync or FTP.
From testing I have found that while rsync is robust and reliable it is quite slow and can only move a single file at a time. When running multiple instances at a time it seems that no additional bandwidth is consumed and instead the files fight each other for bandwidth.
I have developed a powershell script that uses WinSCP and the FTP protocol. Running multiple instances of the script significantly speeds up the data transfer rate. I strongly recommend using this method to download files from the server.