python依赖文件的解析器

dparse的Python项目详细描述


依赖关系分析器

https://img.shields.io/pypi/v/dparse.svghttps://img.shields.io/travis/pyupio/dparse.svghttps://codecov.io/gh/pyupio/dparse/branch/master/graph/badge.svgDocumentation StatusUpdates

python依赖文件的解析器

支持的文件

Fileparseupdate
requirements.txtyesyes
conda.ymlyesyes
tox.iniyesyes
Pipfileyesyes
Pifile.lockyesyes
setup.pyno (# 2)no (# 2)
zc.buildoutno (# 3)no (# 3)
setup.cfgno (# 4)no (# 4)

安装

要安装dparse,请运行:

$ pip install dparse

如果要更新pipfiles,请安装pipenv extra:

$ pip install dparse[pipenv]

用法

在python项目中使用dparse:

from dparse import parse, filetypes

content = """
South==1.0.1 --hash=sha256:abcdefghijklmno
pycrypto>=2.6
"""

df = parse(content, file_type=filetypes.requirements_txt)

print(df.json())




{
  "file_type": "requirements.txt",
  "content": "\nSouth==1.0.1 --hash=sha256:abcdefghijklmno\npycrypto>=2.6\n",
  "path": null,
  "sha": null,
  "dependencies": [
    {
      "name": "South",
      "specs": [
        [
          "==",
          "1.0.1"
        ]
      ],
      "line": "South==1.0.1 --hash=sha256:abcdefghijklmno",
      "source": "pypi",
      "meta": {},
      "line_numbers": null,
      "index_server": null,
      "hashes": [
        "--hash=sha256:abcdefghijklmno"
      ],
      "dependency_type": "requirements.txt",
      "extras": []
    },
    {
      "name": "pycrypto",
      "specs": [
        [
          ">=",
          "2.6"
        ]
      ],
      "line": "pycrypto>=2.6",
      "source": "pypi",
      "meta": {},
      "line_numbers": null,
      "index_server": null,
      "hashes": [],
      "dependency_type": "requirements.txt",
      "extras": []
    }
  ]
}

历史记录

0.4.1(2018-04-06)

  • 修复了打包错误。

0.4.0(2018-04-06)

  • pipenv现在是一个可选的依赖项,只在更新pip文件时使用。用dparse[pipenv]安装它
  • 添加了对无效toml pipfiles的支持(感谢@pombredane)

0.3.0(2018-03-01)

  • 添加了对setup.cfg文件的支持(感谢@kexepal)
  • pipfiles中的依赖项现在包括部分(感谢@paulortman)
  • 如果标记了多行要求,现在将忽略这些要求
  • 增加了对pipfiles的实验支持

0.2.1(2017-07-19)

  • 内部重构

0.2.0(2017-07-19)

  • 已删除setuptools依赖项

0.1.1(2017-07-14)

  • 修正了导致解析器对无效需求抛出错误的错误。

0.1.0(2017-07-11)

  • 首字母,这里不多见。

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

推荐PyPI第三方库


热门话题
java Requestcontextholder在spring 4中具有并发访问权限。IBMWebSphere上的x Web应用程序?   java如何下载、设置和使用Eclipse?   java如何组合这些mysql语句   java JDBC无法连接到openshift上的mysql数据库   如果存在允许正确处理的重载,java对于方便的方法来说是否可行?   使用hibernate序列的java Spring MVC不存在   具有路径的java Selenium ChromeDriver负载扩展问题   读一本书。java中的java文件   退出队列时,Java队列程序结果为空   Java lambda返回带有重复代码问题的列表   java使用意图从其他活动传递数据并在listview中显示   java如何在java中创建JSON输出   java Android:在不破坏或暂停活动的情况下关闭显示   支持Android电视和手机的java多apk   关于Java应用程序测试和调试的一组问题   如何在JavaSE中使用jdbcRealmShiro进行授权   在java中是否有一个无异常检查的URL解析实用程序?   当页面上有多个相同类型的元素时,java会选择一个特定的元素   递归需要帮助发现java代码中的缺陷