If you use a url specifier in your dependency definition, it needs to point directly to the file that you want to install, and not an .html page:
[tool.poetry.dependencies]
python = "^3.8"
torch = {url = "https://download.pytorch.org/whl/cpu/torch-1.7.0%2Bcpu-cp38-cp38-win_amd64.whl"}
torchaudio = {url = "https://download.pytorch.org/whl/torchaudio-0.7.0-cp38-none-win_amd64.whl"}
torchvision = {url = "https://download.pytorch.org/whl/cpu/torchvision-0.8.1%2Bcpu-cp38-cp38-win_amd64.whl"}
That being said, your setup can't be installed with poetry right now because you're going to get a solver error:
[SolverProblemError]
Because torchaudio (0.7.0) depends on torch (1.7.0) which doesn't match any versions, torchaudio is forbidden.
So, because no versions of torchaudio match !=0.7.0
and poetry-test depends on torchaudio (*), version solving failed.
While torch can be installed in isolation, something goes wrong while matching versions when installing torchaudio or torchvision. Maybe it's got to do with the fact that torch includes build info in their version in the wheel you're trying to install (i.e. 1.7.0+cpu), maybe it's because url-denoted dependencies can't be assigned a version in the pyproject.toml (which makes sense, it's not like poetry gets to resolve anything if we tell it "here is a tarball, install it!"), or maybe just an internal poetry bug.
You might have to stick with pip for now, given that it will not complain about solving a dependency tree and instead just starts installing. But ultimately, blame the torch maintainers, for 1) not uploading all their wheels to the global Python package index, and 2) not even setting up their own file server in a PEP-503 conform way.
Update:
I looked a bit more into the discussions, and it seems that a helpful someone has done torch's job of serving their wheels on a PEP-503 conform server. So for the time being, the following will actually work:
[tool.poetry]
name = "poetry-test"
version = "0.1.0"
description = ""
authors = ["Your Name <you@example.com>"]
[[tool.poetry.source]]
name = "foo"
url = "https://vxlabs.com/pypi//simple/"
[tool.poetry.dependencies]
python = "^3.8"
torch = "1.7.0"
torchvision = "0.8.1"
torchaudio = "0.7.0"
[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"