I wrote a program that uses the OONI API to download reports and keep a local directory of reports up to date. It's much faster than the Wget loop I used to use and it finishes quickly when there is nothing new to download.
git clone https://www.bamsoftware.com/git/ooni-sync.git
For example, lately I've had to download a lot of tcp_connect reports. I run it like this: ooni-sync -xz -directory reports.tcp_connect/ test_name=tcp_connect This command downloads the index of tcp_connect reports and only downloads the ones that are not already downloaded. It compresses the downloaded files with xz. The next time I need to update, I run the same command again, and it only downloads reports that are new since the last time.
You can use other query parameters supported by the API, like probe_cc, probe_asn, since, and until. For example: ooni-sync -xz -directory reports.is/ probe_cc=IS since=2017-01-01 ooni-sync -xz -directory reports.as25/ probe_asn=AS25 ooni-sync -xz -directory reports.tor-turkey/ test_name=vanilla_tor probe_cc=TR ooni-sync -xz -directory reports.web_connectivity/ test_name=web_connectivity since=2017-01-01 until=2017-01-02
I prefer to keep all the reports compressed on disk, so I always use the -xz option, but by default reports are saved unmodified.
On Wed, Feb 22, 2017 at 01:58:40PM -0800, David Fifield wrote:
I wrote a program that uses the OONI API to download reports and keep a local directory of reports up to date. It's much faster than the Wget loop I used to use and it finishes quickly when there is nothing new to download.
I set up a web page for ooni-sync.
On 15/06/2017 07:38 +0200, David Fifield wrote:
On Wed, Feb 22, 2017 at 01:58:40PM -0800, David Fifield wrote:
I wrote a program that uses the OONI API to download reports and keep a local directory of reports up to date. It's much faster than the Wget loop I used to use and it finishes quickly when there is nothing new to download.
I set up a web page for ooni-sync.
This is great stuff!
I think this tool is very useful and I bet many people would like to use it.
Should we also setup a github mirror for it under github.com/thetorproject/ooni-sync?
If we do that we can maybe also publish some tags for it and make some builds for common platforms so people can download a prebuilt version of it (similarly to what we do with another go software proteus: https://github.com/TheTorProject/proteus/releases).
~ Arturo
On Thu, Jun 15, 2017 at 03:28:34PM +0200, Arturo Filastò wrote:
Should we also setup a github mirror for it under github.com/thetorproject/ooni-sync?
If we do that we can maybe also publish some tags for it and make some builds for common platforms so people can download a prebuilt version of it (similarly to what we do with another go software proteus: https://github.com/TheTorProject/proteus/releases).
Sure, you're welcome to mirror it and make releases. I tagged+signed a v1.0 for you.