Python url加入 html 表格 url

Python urljoin for html form url

我需要使用 urllib.parse.urljoinhtml form 操作参数插入 url 到我的 url 的路径,但是 urljoin 它在这个例子,例如
url: http://example.com/login/
形式:action="/test"
在点击提交按钮后在网络浏览器中它会像这样 http://example.com/login/test 但在 urljoin 中会像这样 http://example.com/test

>>> from urllib.parse import urljoin
>>> urljoin('http://example.com/login/','/test')
"http://example.com/test/"

我关于从操作参数中获取的 url 的问题例如:action="/test" 在浏览器中 http://example.com/login/test 在 urllib http://example.com/test 但如果值在浏览器中等于 action="/test/" 和 urllib http://example.com/test/ ,当值不以 /

结尾时,我需要像浏览器一样

有什么建议吗?

谢谢

从第二个参数中删除 /urljoin 给出了预期的结果,即 http://example.com/login/test

from urllib.parse import urljoin
base = 'http://example.com/login/'
path = '/test'
urljoin(base, path.strip('/'))

注意:urljoin 应该模仿浏览器的确切行为。因此,如果浏览器指向 http://example.com/login/test,那么 urljoin 的输出也应该如此(反之亦然)。您确定您想要的预期结果吗?

这个问题可能会提供更多见解 - Python: confusions with urljoin