Refactor url reading to use a custom opener with user agent.