Despite your reluctance to use OSM data, check out osmfilter
, and in particular objectfilter
, which is exactly designed for this purpose.
./osmfilter africa.osm --keep="highway=primary =secondary" >streets.osm
The only real challenge is having enough space for the unzipped planet.osm file (or individual continents or countries) and then running osmconvert/osmfilter on that big file. Otherwise, all the tools are ready to go.
Full data exports for Africa and Indonesia are available from https://download.geofabrik.de
To convert from osm/pbf formats, which are specific to OSM, to GeoJSON, Shapefiles, etc - check out ogr2ogr
.
update since posting, I've switched from ogr2ogr to the node.js package osmtogeojson and for simple conversions I'm finding it much easier (and fast).