通用python activitypub库

activitypub的Python项目详细描述


这是一个与
一起使用的python库
ActivityPub。 活动按钮
是一个用于开放、分布式社交网络的api。

安装

您可以使用以下命令安装ActivityPub的开发版本:

pip install git+git://github.com/dsblank/activitypub

或最后一个打包版本:

pip install activitypub

与redis一起使用:

pip install redis redis_collections

或与MongoDB一起使用:

pip install pymongo

或与sqlalchemy一起使用:

pip install sqlalchemy

摘要

此模块设计为在 Python。它针对三种不同的使用级别:

  • ActivityPub对象API
  • ActivityPub数据库API
  • Web服务器API

这些级别可以单独使用,也可以一起使用。他们最好是 使用管理器一起使用:

>>>fromactivitypub.managerimportManager>>>fromactivitypub.databaseimportListDatabase>>>db=ListDatabase()>>>manager=Manager(database=db)>>>p=manager.Person(id="alyssa")>>>p.to_dict(){'@context':'https://www.w3.org/ns/activitystreams','endpoints':{},'followers':'https://example.com/alyssa/followers','following':'https://example.com/alyssa/following','id':'https://example.com/alyssa','inbox':'https://example.com/alyssa/inbox','liked':'https://example.com/alyssa/liked','likes':'https://example.com/alyssa/likes','outbox':'https://example.com/alyssa/outbox','type':'Person','url':'https://example.com/alyssa'}>>>db.actors.insert_one(p.to_dict())>>>db.actors.find_one({"id":'https://example.com/alyssa'}){'@context':'https://www.w3.org/ns/activitystreams','endpoints':{},'followers':'https://example.com/alyssa/followers','following':'https://example.com/alyssa/following','id':'https://example.com/alyssa','inbox':'https://example.com/alyssa/inbox','liked':'https://example.com/alyssa/liked','likes':'https://example.com/alyssa/likes','outbox':'https://example.com/alyssa/outbox','type':'Person','url':'https://example.com/alyssa','_id':ObjectId('5b579aee1342a3230c18fbf7')}

ActivityPub支持以下数据库:

  • MongoDB
  • sql方言-sqlalchemy支持的任何语言,包括:
  • sqlite(包括内存)
  • 火鸟
  • Microsoft SQL Server
  • mysql
  • 甲骨文
  • PostgreSQL
  • Sybase
  • …还有更多!
  • 用于测试的基于json的内存数据库
  • redis

activitypub数据库api是mongodb的一个子集。

ActivityPub的目标是以下Web框架:

  • 烧瓶
  • 龙卷风

其他的可以支持。请问!

ActivityPub WebService API基于Flask的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在Quartz调度器中使用@DisallowConcurrentExecution   Java、流、收集器、函数式编程:如何制作复式映射?   如何以Xpath形式从产品的类别列表页面中提取文本,并将其添加到Selenium Java中的列表中   java如何将比较if语句转换为switch case语句?   java如何查看从未来对象执行的线程(名称)   无法识别特定于java的依赖类   在哪里可以获得Crystal Reports java API的javadoc   java MVC循环依赖   macos更改java webstart将文本悬停在OSX小牛停靠图标上   java创建JOptionPane及其具有固定宽度和高度的对象   groovy是JAVA闭包中的静态初始值设定项   java中awt特定于时间的actionListener   多线程为什么java ReentrantLock不抛出InterruptedException?