I have been playing around with pyinaturalist for a few weeks. This has resulted in a script which I can match the upload speed of the website. However I am not much of a programmer so I didn’t end up with anything which can really compete with the website uploader except in a few niche scenarios. One thing is really nice though. I no longer am worrying about a crash on the website destroying my progress.
That drove home the point that the weak point of the present upload system on the PC is the web browser. When the internet is slow, it takes quite a while to upload. When it crashes you can lose a lot of work and slow internet can really bog down the process. It would be really nice if it came as a stand-alone program.
I am thinking a combination of the existing iPhone uploader and the website uploader. Organize the photos, add the ID and annotations, then either upload a batch of observations or upload all of them. This seems like it could result in quicker times to organize photos and a much lower risk of a crash losing the work. Upload times would of course be the same, but it would be possible to just have it run in the background.