That sounds like a typo, but it actually isn't! You are in the Octoprint directory, which has a venv subdirectory. The previous step implies that you are in the Octoprint directory:
in the source folder:
The period/dot in that case means "from this current folder". It's a common shorthand to tell the shell you are going to be executing a local command. In this case the command is python, which is in the venv/bin subdirectories. Plus, if you hadn't done a "cd octoprint", ../venv would be the wrong direction, as that is headed towards a parent folder.
The download page instructions are very approximate- or "generic" as it says. If you click through to the linux/raspbian install instructions, it gives a more complete step by step set of instructions.
./venv/bin/python setup.py install only works if you are in the same directory as 'setup.py'. That would be 'Octoprint-master'. But then you need to step up one folder to reach venv. So its either:
../venv/bin/python setup.py install (if you are in 'Octoprint-master')
or
./venv/bin/python Octoprint-master/setup.py install (if you are in 'Octoprint')
Creating a (user owned) virtual environment in the source folder: virtualenv venv
in the source folder so you cd into the OctoPrint folder and create the environment there is the setup.py
Installing OctoPrint into that virtual environment : ./venv/bin/python setup.py install
they you run the python binary from that environment to execute the setup.py
OctoPrint may then be started through ./venv/bin/octoprint or with an absolute path /path/to/OctoPrint/venv/bin/octoprint
...
when you want it your way you have to cd into venv before to get back the OctoPrint folder again which makes no sense.
Only if you want to type endless ...