Just to clarify what Conrad was saying -- on PythonAnywhere you can't specify a port. For a free account, you get one website, which is served over HTTP on port 80 and over HTTPS on port 443. Paid accounts can also have web sites on custom domains (purchased elsewhere, we're not a registrar), but again only on the standard HTTP and HTTPS ports.
The purpose of the WSGI file is to connect your domain to a specific web app, whether that app is Flask, Bottle, Django, web2py, or another WSGI-compliant framework. These frameworks all have a fairly simple way to produce a WSGI application, so that's what you put there. The rest of your website code is assumed to be kept in a file somewhere in your home directory -- by default we generate a simple "Hello world" app for you, which for Flask is flask_app.py, but that's just a stub for you to replace with your real Flask code.