setup.py 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. from pathlib import Path
  2. from setuptools import setup, find_packages
  3. from magic_pdf.libs.version import __version__
  4. def parse_requirements(filename):
  5. with open(filename) as f:
  6. lines = f.read().splitlines()
  7. requires = []
  8. for line in lines:
  9. if "http" in line:
  10. pkg_name_without_url = line.split('@')[0].strip()
  11. requires.append(pkg_name_without_url)
  12. else:
  13. requires.append(line)
  14. return requires
  15. if __name__ == '__main__':
  16. with Path(Path(__file__).parent,
  17. 'README.md').open(encoding='utf-8') as file:
  18. long_description = file.read()
  19. setup(
  20. name="magic_pdf", # 项目名
  21. version=__version__, # 自动从tag中获取版本号
  22. packages=find_packages(), # 包含所有的包
  23. install_requires=parse_requirements('requirements.txt'), # 项目依赖的第三方库
  24. extras_require={
  25. "gpu": ["paddleocr", "paddlepaddle-gpu"],
  26. "cpu": ["paddleocr", "paddlepaddle"],
  27. },
  28. description="A practical tool for converting PDF to Markdown", # 简短描述
  29. long_description=long_description, # 详细描述
  30. long_description_content_type="text/markdown", # 如果README是Markdown格式
  31. url="https://github.com/opendatalab/MinerU",
  32. python_requires=">=3.9", # 项目依赖的 Python 版本
  33. entry_points={
  34. "console_scripts": [
  35. "magic-pdf = magic_pdf.cli.magicpdf:cli"
  36. ],
  37. }, # 项目提供的可执行命令
  38. include_package_data=True, # 是否包含非代码文件,如数据文件、配置文件等
  39. zip_safe=False, # 是否使用 zip 文件格式打包,一般设为 False
  40. )