rentry.co的异步客户端(https://rentry.co/)(镜像:https://rentry.org/)
项目描述
aiorentry
rentry.co(镜像:rentry.org)的异步API客户端
关于
此包允许您与rentry.co(或rentry.org)服务进行交互。
Rentry.co是一个提供预览、自定义URL和编辑等功能的高级Markdown粘贴板和发布服务。
请注意,此库不是由rentry.co的官方作者开发的。它复制了官方控制台工具的功能,但提供了异步API客户端。使用此包,您可以管理您的页面:创建、编辑和删除,以及以文本、PNG或PDF格式获取数据。所有操作均直接从您的异步Python应用程序中完成。
安装
pip install aiorentry
设置客户端
您可以通过两种方式设置客户端
作为经典对象
[!警告] 如果您更喜欢经典方式,您应该在初始化期间调用
await client.setup()
,在完成期间调用await client.close()
import asyncio
from aiorentry.client import Client
async def main():
client = Client('https://rentry.co')
await client.setup()
# Your code here
await client.close()
asyncio.run(main())
作为异步上下文管理器
import asyncio
from aiorentry.client import Client
async def main():
async with Client('https://rentry.co') as client:
# Your code here
asyncio.run(main())
示例
创建新页面
...
# Create new page
page = await client.new_page(
'## Hello world from awesome API',
)
print(page)
...
Page(url='m2e2wpe8', edit_code='hUHeRUei', text='## Hello world from awesome API')
...
# Create new page with custom url and edit_code
awesome_page = await client.new_page(
'## Hello world from awesome API',
url='awesome-url',
edit_code='qwerty=)'
)
print(awesome_page)
...
Page(url='awesome-url', edit_code='qwerty=)', text='## Hello world from awesome API')
编辑页面
...
# Edit page
await client.edit_page(
'### Updated Hello world',
url='awesome-url',
edit_code='qwerty=)',
)
...
删除页面
...
# Delete page
await client.delete_page(
url='awesome-url',
edit_code='qwerty=)',
)
...
获取原始页面文本
...
# Get raw content
content = await client.raw('awesome-url')
print(content)
...
### Updated Hello world
获取PDF文件
...
# Get PDF
with open('page.pdf', mode='wb') as fp:
fp.write(await client.pdf(page.url))
...
获取PNG
...
with open('page.png', mode='wb') as fp:
fp.write(await client.png(page.url))
...
自定义ClientSession
[!注意] 默认情况下,将自动创建新的
实例。所以通常您不需要担心这个问题。
如果您不想在客户端自动创建会话对象,可以将现有的 aiohttp.ClientSession
传递给客户端构造函数。
[!注意] 如果将现有的会话对象传递给客户端构造函数,那么您应该自己注意释放资源。
会话将不会自动关闭! 即使使用了异步上下文管理器。
from aiohttp import ClientSession, TCPConnector
from aiorentry.client import Client
connector = TCPConnector(
limit=5, # Just for example
)
session = ClientSession(
connector=connector,
)
async with Client('https://rentry.co', session=session) as client:
# Your code here
async with session.get(...) as response:
# You can still use this session object
项目详情
下载文件
下载您平台对应的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分发
aiorentry-0.1.2.tar.gz (4.8 kB 查看哈希值)
构建分发
aiorentry-0.1.2-py3-none-any.whl (5.1 kB 查看哈希值)
关闭
aiorentry-0.1.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7a52893c006a9b4ab9599c0f5323bb15e3b310bf700572d7a3eddc02e9aa4c70 |
|
MD5 | e22012ef72317a591c9828361b7b178e |
|
BLAKE2b-256 | ba673adcfb76e556528d44bb2a7a91c8b52e19322d43acaf43962747b9379e38 |
关闭
aiorentry-0.1.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0e8658e1b71ea1497214837d0bc21c1070ff1e99fad0171d94da63e1734480f6 |
|
MD5 | 919618845d050d0cd3286c0c329fd6a1 |
|
BLAKE2b-256 | d9f6df6cedc4c8bd429f183700497c72259558abbb582d0aec6a74fc0ff4b6d7 |