Bitbucket API的Python包装器
pybitbucket37的Python项目详细描述
Bitbucket Cloud REST API的Python包装器。
这不适用于Bitbucket服务器,
以前被称为藏物。
要开始使用此库,只需执行以下操作:pip install pybitbucket
采用这个库
验证
Authenticator
子类用凭据准备API请求。
最简单的情况是Anonymous
,它不使用凭据进行连接。
Anonymous
可以与公共可用资源一起使用。
对于私人资源,
^{username>和BasicAuthenticator
子类化以提供自定义行为。在
要“插入”您的实现或标准实现,只需执行以下操作:
bitbucket = Client( BasicAuthenticator( 'your_username_here', 'your_secret_password_here', 'pybitbucket@mailinator.com'))
如果已启用two-step verification,
然后需要使用app password和BasicAuthenticator
一起使用,
不是您的常规用户密码。
OAuth2Authenticator
是一个示例和超类。
它可能适用于某些命令行客户机。
其他客户端喜欢web应用程序
将需要obtain_authorization()
的适当实现
也许还需要使用不同的补助金类型。在
找到东西
例如,要查找所有代码段:
^{pr2}$该方法表示“for role”,但是如果没有提供,它将使用默认的owner。 因此,你所有的片段。在
一般来说,在每种类型的资源上使用静态find方法来完成查找。 如果资源是复数,如上面的“snippets”,那么find方法就是一个生成器。 您可以将其与迭代器或理解一起使用。 您可以找到的资源包括:
- 用户和团队
- 存储库和代码段
- 请求和评论
- 提交和生成状态
- 钩支限制
创造事物
例如,要创建新代码段:
snip = Snippet.create( files=open_files(["README.rst"]), payload=SnippetPayload().add_title("My New Snippet"), client=bitbucket)
您可以创建的资源包括:
- 存储库和代码段
- 请求和评论
- 生成状态
- 钩支限制
检查事物
例如,要检查代码段上的属性,请执行以下操作:
snip = Snippet.find_snippet_by_id("Xqoz8", bitbucket) s = '\n'.join([ "id : {}".format(snip.id), "is_private : {}".format(snip.is_private), "title : {}".format(snip.title), "files : {}".format(snip.filenames), "created_on : {}".format(snip.created_on), "updated_on : {}".format(snip.updated_on), "scm : {}".format(snip.scm), ]) if snip else 'Snippet not found.' print(s)
有哪些属性可用? 你不会发现它们是用Python硬编码的。 它们是从JSON响应动态填充的。 您可以通过一种方便的方法查询列表:
snip = Snippet.find_snippet_by_id("Xqoz8", bitbucket) print(snip.attributes())
当心。同一个资源的属性可能会根据您使用它的方式而改变。在
发展中
Python虚拟环境设置(适用于OS X)
它不像虚拟机那样是虚拟的。更像是Python版本和库的专用容器。在
brew install python
这将安装python2.7的最新版本,其中包含setuptools和pip的版本。不幸的是,这些setuptools和pip的版本似乎被破坏了。在pip install --upgrade --no-use-wheel setuptools
pip install --upgrade --no-use-wheel pip
pip install virtualenvwrapper
项目设置
- 克隆存储库并将其设置为当前工作目录。在
- (可选,但良好做法)创建virtual environment:
mkvirtualenv python-bitbucket
一旦创建,使用workon python-bitbucket
来恢复虚拟环境。在 pip install -r requirements-dev.txt
将所需的库加载到虚拟环境中。在paver test_all
运行所有单元测试并分析源代码。在
托多
PUT
和DELETE
来自{a9}的{}。在 - 团体
- 组权限
- 邀请
将version 1 endpoints包装为:
- 项目
标签: