archive_org_url_processor.py | ||
commoncrawl_local_to_share_move.ps1 | ||
commoncrawl_transfer.ps1 | ||
commoncrawl_url_processor.py | ||
prerequisites.sh | ||
README.md | ||
warc_wat_url_processor.py |
Overview:
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).
Requirements:
- Python3
- Gzip
- Axel
- Parallel
- WinSCP
- PowerShell
- Zstd
Pre-Setup Steps:
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.
Steps:
- 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.
- Once the script has completed running, verify the output of the file.
Data Transfer:
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.
Notes:
- A text file with all of the CommonCrawl links named "urls_to_download.txt" is required to be located in /opt/
- I took the lazy way of setting up FTP on the server by allowing the root account SSH access to the server without a private key.
- WinSCP Automation is required to be downloaded and copied over the top of the installed WinSCP installation directory for the script to work.