Retry on random connection errors

Prevents the scraper from completely stopping when a connection error occurs.
Use recursive functions for retrying

Retrying once isn't really enough in most cases.
Fix the function from the previous commit

It works properly now, it was called too early before, raising exceptions
before encountering the code to handle them.
Change retry_if_fails to _retry_on_fail
Merge pull request #4 from tsudoko/retry-on-error

Retry on random connection errors