如何在 PyPI 中包含非 .py 文件?

2024-03-18

我是 PyPI 的新手...所以让我符合这一点。我试图在 PyPI 上放置一个包,但当我尝试使用 pip 安装它时遇到了一些麻烦。当我将文件上传到 PyPI 时,我收到一条警告(但 setup.py 脚本完成时没有出现致命错误和 200 状态):

'my_package/static/my_folder' not a regular file -- skipping

然后当我在 pip 中安装它时,出现错误:

"error: can't copy 'my_package/static/my_folder': doesn't exist or not a regular file. 

从其他答案来看,我尝试更改我的 MANIFEST.in 和 setup.py 文件,但没有成功。这是我当前的 MANIFEST.in:

recursive-include my_package *.css *.js *.jinja2

和setup.py:

try:
    from setuptools import setup, find_packages
except ImportError:
    from distutils.core import setup, find_packages

setup(
    name='my_package',
    packages=find_packages(),
    include_package_data=True,
    platforms='any',
    version='1.0',
    description='my_description',
    license='MIT',
    author='Me',
    author_email='[email protected] /cdn-cgi/l/email-protection',
    install_requires=[
        'Flask',
        'Jinja2',
        'requests',
    ],
    url='http://www.example.com',
    download_url='https://github.com/me/my_package/tarball/1.0',
    classifiers=[
        'License :: OSI Approved :: MIT License',
    ],
)

编辑:我也尝试忽略 MANIFEST.in 文件只是为了看看这是否弄乱了任何东西,但我得到了相同的结果。


(根据要求转发评论。)

您的设置脚本和MANIFEST.in应该管用。用一个最小的例子来证明这一点:

my_project/
    my_package/
        static/
            a.css
        __init__.py
    MANIFEST.in
    setup.py

Run python setup.py sdist你会发现两者static/a.css and __init__.py捆绑在tar.gz包裹。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 PyPI 中包含非 .py 文件? 的相关文章

  • 使用 Python 或 Django 处理收到的电子邮件?

    我了解如何通过 Django 发送电子邮件 但我希望用户能够回复电子邮件 如果他们发送 以及我收到 的电子邮件包含与某个字符串匹配的消息 我将调用一个函数 我已经做了一些谷歌搜索 但除了自己制作脚本之外似乎没有什么好的解决方案 如果有什么东
  • Python BS4 Scraper 仅返回每个页面的前 9 个结果

    我让这段代码按预期工作 只是它并没有完全按预期工作 一切似乎都很顺利 直到我检查了我的 csv 输出文件并注意到我每页只得到前 9 个结果 每页应该有 40 个结果 因此我得到的结果少于预期的 25 有什么想法吗 import reques
  • 为什么 python 允许没有“pass”语句的空函数(带有文档字符串)主体?

    class SomeThing object Represents something def method one self This is the first method will do something useful one da
  • 如何在后台运行python程序以保持活动窗口相同

    我编写了一个程序 可以将前景窗口更改为显示器尺寸的 85 并且要成功运行 前景窗口需要保持不变 我已将 python 脚本 pyw 放入批处理文件 运行 pythonw 并在桌面上创建了批处理文件的快捷方式 并提供了快速运行它的快捷方式 我
  • 有没有办法清理 jinja2 生成的 html?

    我们使用 jinja2 来创建 html 但是 由于我们在 jinja 中执行许多循环和其他操作来生成 html 所以 html 看起来 很丑 注意 这只是为了美观 我们可以做些什么来清理 html 吗 除了清理我们的 jinja2 代码之
  • 动态添加jinja模板

    我有一个 jinja 模板 它是一组 div 标签内的唯一内容 div include temppage html div 当我按下按钮时 我想用其他内容替换标签之间的所有内容 我希望用另一个 jinja 模板 include realpa
  • 如何使用 tweepy 仅提取主题标签中的文本?

    我想为我的情感分析项目提取主题标签 但是我得到了一个字典列表 其中包含所有主题标签及其在推文中的索引 我只想要文字 我的代码 data tweepy Cursor api search q since a i until b i items
  • 带有 UnboundLocalError 的本地和全局引用

    我不太明白为什么代码 def f print s s foo f 运行得很好但是 def f print s s bar s foo f 给我 UnboundLocalError 我知道我可以通过声明来解决这个问题s作为函数内的全局变量或简
  • Pandas:将 DataFrame 列值转换为新的 Dataframe 索引和列

    我有一个如下所示的数据框 a b c 0 1 10 1 2 10 2 2 20 3 3 30 4 1 40 4 3 10 上面的数据帧作为默认索引 0 1 2 3 4 我想将其转换为如下所示的数据框 1 2 3 0 10 0 0 1 0 1
  • Tornado:DummyFuture 不支持结果阻塞

    我试图获得一个非常简单的初始服务器 它可以 异步 获取 url 来工作 但它会抛出 Exception DummyFuture does not support blocking for results 有这个SO https stacko
  • Python range() 和 zip() 对象类型

    我了解功能如何range and zip 可以在 for 循环中使用 然而我期望range 输出一个列表 很像seq在 Unix shell 中 如果我运行以下代码 a range 10 print a 输出是range 10 表明它不是一
  • 为什么计算大整数阶乘的“分而治之”方法如此快? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 MinGW 链接到 Python

    我不想创建一个嵌入Python解释器的跨平台程序 并用MinGW编译它 但是 Python 二进制发行版没有提供 MinGW 链接的库 仅python32 lib对于 Visual C 并且 Python 源包不提供使用 MinGW 编译的
  • 获取 pandas 中最后一次出现特定值之后的所有行

    我的数据框看起来像 ID colA 1 B 1 D 2 B 2 D 2 C 我已返回每组中事件 B 最后一次出现后的所有行 输出将是 ID colA 1 D 2 D 2 C 我试过 a df colA str contains B grou
  • 使用 asyncio 时应该如何创建属性?

    在创建使用 asyncio 的类时 我发现自己处于属性 getter 需要进行 io 操作的情况 因此该函数应该是一个协程 然而 等待房产的感觉却很不寻常 这是我的意思的一个最小的例子 该代码有效并且可以运行 import asyncio
  • 如何在 Python 中将 .docx 转换为 .txt

    我想将大量 MS Word 文件转换为纯文本格式 我不知道如何在 Python 中做到这一点 我在网上找到了以下代码 我的路径是本地路径 所有文件名都类似于 cx xxx 即 c1 000 c1 001 c2 000 c2 001 等 fr
  • ValueError:对于optimize.curve_fit中所需的数组来说对象太深

    我正在尝试拟合化学系统中四个变量 A B C D 的人口增长和衰退的动力学模型 我正在尝试求解以下一组方程 我已将其以矩阵形式附加 方程的矩阵形式 https i stack imgur com ysEdZ png 其中 t 是时间步长 k
  • 将 celery 与 Flask 应用程序上下文一起使用会导致“弹出错误的应用程序上下文”。断言错误

    我或多或少使用设置来使用您的 Flask 应用程序上下文来运行 Celery 任务 http flask pocoo org docs 0 10 patterns celery http flask pocoo org docs 0 10
  • 在 python 中使用 ftplib 时

    这是导致错误的相关代码 ftp ftplib FTP server ftp login r user r pass change directories to the incoming folder ftp cwd incoming fil
  • 重定向到破折号中的 url

    我正在使用 dash 构建一个仪表板 每当单击特定数据点时 我都会创建一个唯一的 url 如何将用户重定向到此创建的 url 我正在使用下面给出的代码 每当有人单击任何数据点时 单击事件就会触发并执行回调函数 app layout html

随机推荐

  • gulp-nunjucks-html + gulp-data 未在手表上编译

    我编写了一个 gulp 任务来从 json 文件中获取数据并将其处理为 html 当我第一次运行构建时 这就像一个魅力 但是我设置了一个监视任务来执行此操作 尽管它会将 nunjucks 文件重建为 html 但它似乎会忽略 json 直到
  • 为什么不带参数的 git rebase 会这样工作?

    每隔一段时间我就会表演一次git rebase不带参数 发现 Git 没有根据我配置的上游进行变基 而是使用了 fork point选项并重新基于 其他东西 导致我的承诺消失 这与文档的内容一致git 变基 https git scm co
  • 如何返回邮政编码列表 ## 英里半径内的所有实例

    SQL Server 2008 添加了一些很酷的新空间类型 并为 SQL 开发人员提供了更强大的操作空间数据的方法 但它仍然让我无法有效地返回 例如 仅返回长列表的 英里半径内的位置邮政编码 20 到 15 000 个不同的邮政编码 有没有
  • H2、HSQLDB 或任何其他使用 InputStream 的嵌入式数据库

    我可以使用 H2 HSQLDB 或任何其他嵌入式数据库吗 InputStream而不是文件 我打算使用AssetManager open http developer android com reference android conten
  • 在Java中,如何在数组中存储大数字?

    在Java中 如何将数字存储在数组中 我的意思是非常长的数字 例如高达1万亿 这样我就可以访问它们并用文字打印出它们是什么 1万亿不是that大 只需使用一个long 它可以存储大至 9223372036854775807 超过五亿 的数字
  • 查询 Pandas 中的 NaN 和其他名称

    假设我有一个数据框df有一个柱子value保存一些浮点值和一些NaN 我怎样才能获得我们拥有的数据框部分NaN 使用查询语法 例如 以下内容不起作用 df query value lt 10 or value NaN I get name
  • 更改 django models related_name 属性是否需要向南迁移?

    我有一个带有外键的简单 django 模型 class FooModel models Model foo models ForeignKey Foo related name foo choices bar models CharFiel
  • 在 Webpack 中加载静态 JSON 文件

    我的代码中有以下构造 var getMenu function return window fetch portal content json menu json then function data return data json 我尝
  • python pack 4字节整数,字节数组位于bytearray struct.pack中

    我正在尝试使用 struct pack 将 python bytearray 的内容打包为 4byte 有符号整数 不幸的是 pack 想要一个字符串 所以经过一番谷歌搜索后 我认为我需要将字节数组解码为字符串 我认为 ascii 的意思是
  • 通过 API GW 调用时,AWS Lambda Go 函数未获取请求正文

    首先 有人可能会说这个问题非常类似于HTTP 请求正文无法通过 AWS API Gateway 访问 AWS lambda 函数 https stackoverflow com questions 41059440 http request
  • 集合removeAll忽略大小写?

    好的 这是我的问题 我必须HashSet的 我用的是removeAll方法从一组中删除存在于另一组中的值 在调用该方法之前 我显然将这些值添加到Sets 我打电话 toUpperCase 在各个String在添加之前 因为两个列表中的值的情
  • 显示菜单使光标消失

    单击时光标消失 如下所示 如何重现 获取 Game Jam 菜单模板 https www assetstore unity3d com en content 40465 https www assetstore unity3d com en
  • 如何完全反汇编Python源代码

    我一直在玩dis库来反汇编一些Python源代码 但我发现这不会递归到函数或类中 import dis source py test py with open source py as f source source code f sour
  • 打开工作表时自动执行的宏

    我的宏 update 是否有可能在每次打开 Excel 文件时自动执行 下面的代码不能很好地工作 谢谢 Private Sub Workbook Open Run update End Sub Option Explicit Sub upd
  • Google Sheets 调试无休止的计算和缓慢的加载时间(Chrome 开发工具)

    使用 Google 表格 随着时间的推移 它的复杂性和大小都在增长 现在正在无休止地计算 而且打开速度非常慢 该工作表包含大量数据 公式和导入范围 我已阅读有关如何加快工作表速度的最佳实践link https www benlcollins
  • 将 Fogbugz 与 TortoiseSVN 集成,无需 URL/Subversion 后端

    我已经安装了 TotroiseSVN 并且大部分存储库都从 C subversion 签入和签出以及一些从网络共享签入和签出的情况 当我最初发布这个问题时我忘记了这一点 这意味着我本身没有 颠覆 服务器 如何集成 TortoiseSVN 和
  • 为什么我收到错误“该类型的方法未定义”?

    我正在大学学习基础知识 希望获得有关 Eclipse 中以下错误的帮助 The method getCost is undefined for the type ShopCLI Exception in thread main java l
  • 在 Objective-C 中以编程方式计算 IRR(内部利率回报)和 NPV

    我正在开发一个金融应用程序并需要IRR in built functionality of Excel 计算并发现了如此好的教程C here http www codeproject com Tips 461049 Internal Rat
  • WPF 分隔符位置

    我正在使用分隔符在边框内绘制一条垂直线 起初这没问题 因为线条需要居中 但现在我需要将其定位在距左边框的自定义 x 位置 有没有办法做到这一点
  • 如何在 PyPI 中包含非 .py 文件?

    我是 PyPI 的新手 所以让我符合这一点 我试图在 PyPI 上放置一个包 但当我尝试使用 pip 安装它时遇到了一些麻烦 当我将文件上传到 PyPI 时 我收到一条警告 但 setup py 脚本完成时没有出现致命错误和 200 状态