如何在 PyPI 中设置项目链接

bic*_*sen 9 setuptools pypi setup.py python-packaging

如何在PyPI项目的Project Links部分下添加链接?

bic*_*sen 13

这个问题之前已经回答过,但有点难找,所以希望这个问题更容易一些。

PyPI 从project_urls元数据中提取这些链接。

在您的setup.py文件中,setuptools.setup()project_urls参数作为标题-url 对的字典进行调用。

import setuptools

project_urls = {
  'Link 1': 'https://mygreatsite.com',
  'Link 2': 'https://anothersite.com'
}

setuptools.setup( other_arguments, project_urls = project_urls )
Run Code Online (Sandbox Code Playgroud)


小智 8

如果你想知道 PyPI 上哪个 URL 标识符使用哪个图标,例如,如果你写

project_urls = {
  'Twitter': 'https://twitter.com/PyScaffold',
}
Run Code Online (Sandbox Code Playgroud)

你会在 PyPI 上看到 Twitter 鸟,例如https://pypi.org/project/PyScaffold/

为了查看可用的图标以及何时设置,只需从PyPI 源代码中查看此文件( /warehouse/templates/packaging/detail.html)即可。


mli*_*ner 7

诗歌的做法有点不同,但想法是一样的。

您可以将一些基本信息放在 pyproject.toml 文件的主要部分中,位于[tool.poetry]. 就像是:

[tool.poetry]
homepage = "https://free.law/projects/x-ray"
repository = "https://github.com/freelawproject/x-ray"
documentation = "https://github.com/freelawproject/x-ray/blob/main/README.md"
Run Code Online (Sandbox Code Playgroud)

如果您想要更多 URL,您可以执行以下操作:

[tool.poetry.urls]
"Organisation Homepage" = "https://free.law/"
"Change Log" = "https://github.com/freelawproject/x-ray/blob/main/CHANGES.md"
Issues = "https://github.com/freelawproject/x-ray/issues"
Funding = "https://www.courtlistener.com/donate/?referrer=pypi-xray"
Run Code Online (Sandbox Code Playgroud)

有一个特殊值列表可以让你获得图标,但似乎你可以在这里放置任何你想要的东西,Poetry 会很高兴。如果 Pypi 不知道链接是什么,它只会在其旁边放置一个通用图标。

以下是获得图标的事物列表:

https://github.com/pypi/warehouse/blob/main/warehouse/templates/packaging/detail.html