媒体云cliff api客户端库

mediacloud-cliff的Python项目详细描述


这是一个用于Media Cloud CLIFF-CLAVIN geocoder的简单python客户机。

用法

如果你只是想用这个库和悬崖服务器对话 在某个地方运行,首先安装它

pip install mediacloud-cliff

然后实例化并像这样使用:

fromcliff.apiimportCliffmy_cliff=Cliff('http://myserver.com:8080')my_cliff.parse_text("This is about Einstien at the IIT in New Delhi.")

这将返回如下结果:

{"results":{"organizations":[{"count":1,"name":"IIT"}],"places":{"focus":{"cities":[{"id":1261481,"lon":77.22445,"name":"New Delhi","score":1,"countryGeoNameId":"1269750","countryCode":"IN","featureCode":"PPLC","featureClass":"P","stateCode":"07","lat":28.63576,"stateGeoNameId":"1273293","population":317797}],"states":[{"id":1273293,"lon":77.1,"name":"National Capital Territory of Delhi","score":1,"countryGeoNameId":"1269750","countryCode":"IN","featureCode":"ADM1","featureClass":"A","stateCode":"07","lat":28.6667,"stateGeoNameId":"1273293","population":16787941}],"countries":[{"id":1269750,"lon":79,"name":"Republic of India","score":1,"countryGeoNameId":"1269750","countryCode":"IN","featureCode":"PCLI","featureClass":"A","stateCode":"00","lat":22,"stateGeoNameId":"","population":1173108018}]},"mentions":[{"id":1261481,"lon":77.22445,"source":{"charIndex":37,"string":"New Delhi"},"name":"New Delhi","countryGeoNameId":"1269750","countryCode":"IN","featureCode":"PPLC","featureClass":"P","stateCode":"07","confidence":1,"lat":28.63576,"stateGeoNameId":"1273293","population":317797}]},"people":[{"count":1,"name":"Einstien"}]},"status":"ok","milliseconds":22,"version":"2.4.2"}

您也可以从悬崖内的geonames数据库获取信息:

fromcliff.apiimportCliffmy_cliff=Cliff('http://myserver.com:8080')my_cliff.geonames_lookup(4943351)

这样会得到如下结果:

{"results":{"id":4943351,"lon":-71.09172,"name":"Massachusetts Institute of Technology","countryGeoNameId":"6252001","countryCode":"US","featureCode":"SCH","featureClass":"S","parent":{"id":4943909,"lon":-71.39184,"name":"Middlesex County","countryGeoNameId":"6252001","countryCode":"US","featureCode":"ADM2","featureClass":"A","parent":{"id":6254926,"lon":-71.10832,"name":"Massachusetts","countryGeoNameId":"6252001","countryCode":"US","featureCode":"ADM1","featureClass":"A","parent":{"id":6252001,"lon":-98.5,"name":"United States","countryGeoNameId":"6252001","countryCode":"US","featureCode":"PCLI","featureClass":"A","stateCode":"00","lat":39.76,"stateGeoNameId":"","population":310232863},"stateCode":"MA","lat":42.36565,"stateGeoNameId":"6254926","population":6433422},"stateCode":"MA","lat":42.48555,"stateGeoNameId":"6254926","population":1503085},"stateCode":"MA","lat":42.35954,"stateGeoNameId":"6254926","population":0},"status":"ok","version":"2.4.2"}

开发

如果您想在这个api客户机上工作,那么首先克隆the source repo from GitHub 并安装依赖项

pip install -r requirements.pip

然后将settings.config.sample复制到settings.config并放入 cliff服务器的url和端口。现在你应该可以 发展!

分布

  1. 运行python test.py以确保所有测试通过
  2. 更新cliff/__init__.py
  3. 中的版本号
  4. 在自述文件的版本历史部分做一个简短的注释 关于更改
  5. 运行python setup.py sdist在本地测试版本
  6. 然后运行python setup.py sdist upload -r pypitest以释放 pypi测试服务器的测试版本
  7. 运行pip install -ihttps://testpypi.python.org/pypi mediacloud 然后与python一起使用,以确保测试版本 作品。
  8. 当你准备好推动pypi运行时 python setup.py sdist upload -r pypi
  9. 在某处运行pip install mediacloud-cliff,然后尝试 一定要成功。

版本历史记录

  • v2.1.0:升级到cliff v2.4.2
  • v2.0.2:更新自述文件中的示例
  • v2.0.1:使用url而不是主机/端口初始化
  • v2.0.0:移动到mediacloud命名,带下划线的方法名, 删除不推荐的NLP终结点
  • v1.4.0:升级到cliff v2.4.1,添加对extractcontent的支持 终点
  • v1.3.1:python3的更新
  • v1.3.0:python3的更新,支持客户端文本 替换
  • v1.2.0:指向cliff v2.3.0(更新斯坦福纳有新的 插件架构)
  • v1.1.0:指向cliff v2.2.0(将祖先添加到 geonamesLookuphelper)
  • v1.0.2:pypi的第一个版本

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

推荐PyPI第三方库


热门话题
java我的int值在SharedReferences中不被记住   java如何编辑Spring可分页对象?   java如何在gradle中单独调用任务   jvm以编程方式设置最大java堆大小   java如果满足多个条件,如何使用If语句计算数字?   如何在java中从json文件中获取特定值   如何在Sphinx4中为Java语音识别添加自定义语法?   java int[]copy=data;//当数据是数组时会发生什么?   java豪猪管理器。停下来。destroy()不起作用   安卓在API级别28中找不到画布变量   基于SOLID的java冗余   用于talend作业的java Liferay和portlet   从java到安卓的视频流   java获取在控件的类定义中添加自定义控件的场景大小   awt Java IndexOutOfBoundsException   java如何使用Spring JmsTemplate更改MQ头   java遍历数组并打印每个对象   java Google Map api v2标记在我旋转手机和地图“刷新”之前不会移动