将目录上传到 pinata ipfs API

2024-01-05

我正在尝试将 png 目录上传到 pinata,但我不断收到此错误:

{'error': 'Invalid file path: C:\\Users\\myname\\Documents\\Coding Projects\\nft\\art\\reveal\\1.png detected. 
If you are receiving this, you provided either bad data or a file path our systems have 
flagged as unsafe for processing. If your file paths are valid, please contact us at
tea[email protected] /cdn-cgi/l/email-protection. We would love to help accommodate your needs!'}

这是我尝试过的代码:


def get_all_files(directory: str) -> tp.List[str]:
    """get a list of absolute paths to every file located in the directory"""
    paths: tp.List[str] = []
    for root, dirs, files_ in os.walk(os.path.abspath(directory)):
        for file in files_:
            paths.append(os.path.join(root, file))
    return paths

def upload_directory_to_pinata(directory):

    all_files: tp.List[str] = get_all_files(directory)
    files = [("file", (file, open(file, "rb"))) for file in all_files]

    print(files)

    headers = {
        "pinata_api_key": os.getenv("PINATA_API_KEY"),
        "pinata_secret_api_key": os.getenv("PINATA_API_SECRET"),
    }

    response = requests.Response = requests.post(
        url=PINATA_BASE_URL + endpoint, files=files, headers=headers
    )

    data = response.json()
    print(data)
    imageLinkBase = "ipfs://" + data["IpfsHash"] + "/"
    return imageLinkBase

该文件路径确实是有效的文件路径。我需要一个带有 CID 的 IPFS(或 pinata)目录,然后里面有一堆数字图片。如果还有其他方法可以做到这一点,lmk!谢谢你!


也许您添加了每个文件的绝对路径而不是相对文件路径?

This endpoint also allows users to pin an entire directory to IPFS. 
This works almost identically to pinning a file, with the main difference being that we provide 
an array of files and need to provide a relative file path for each file in the directory.

However, our servers will use the exact path that's provided for each file, 
so it's important that each path begins with the "base" directory that is being uploaded. 
As an example, if your directory is located at "./../myBuilds/desiredBuild" 
on your local machine, then each file path should start with "desiredBuild".
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将目录上传到 pinata ipfs API 的相关文章

随机推荐

  • 设置 Sentry.io 时出现问题。没有任何内容发送到哨兵面板

    我将在我正在开发的 Android 项目中使用 Sentry 我的公司正在使用自托管 Sentry 版本 9 0 0 我跟着Sentry io 安装指南 https docs sentry io clients java modules a
  • 插入sqlite flutter 不冻结界面

    我正在尝试使用 flutter 在 sqlite 内存数据库中插入大量行 大约 12k 或更多 我从 API 获取数据并使用计算函数来处理来自 Json 的数据 现在我需要将这些数据添加到内存中的数据库中 为此我使用批量事务 batchIn
  • Watir webdriver Errno::ECONNREFUSED: 无法建立连接,因为目标计算机主动拒绝连接。 - 连接(2)

    Updated 我正在运行下面的代码来执行示例测试用例 Windows 7 Watir 3 0 0 Watir webdriver 0 6 1 require watir webdriver require test unit class
  • spring - hibernate 5 命名策略配置

    我正在使用 postgresql 数据库和 spring hibernate 框架编写应用程序 我将spring框架从4 1 5 RELEASE升级到4 2 0 RELEASE版本 并将hibernate框架从4 3 7 Final升级到5
  • 视图中的 CodeIgniter 助手

    这是一个很好的解决方法吗 是否可以在 CodeIgniter 的视图中使用辅助类 我遇到一种情况 我必须使用正则表达式从文本字符串中提取并生成匹配的输出 我不想直接在视图中执行此操作 并且我想为此使用一个助手 application vie
  • 使用 jquery 删除所有 href 链接

    我试图从已解析的站点中删除所有链接 然后该站点已删除一个 div 并将其放置在主代码中 问题是我试图删除提取的 div 中的所有 href 链接 但无法到达任何地方 我尝试过使用 CSS 并且可以工作 但只能在 Chrome 中使用 而且我
  • 在 subversion 中创建一个“标签”,指示下一个版本中应包含哪些文件

    我使用 StarTeam 进行版本控制已经有一段时间了 但现在正在转向 Subversion 我一直在读颠覆书 http svnbook red bean com StarTeam 似乎有一个 Subversion 没有的主要功能 标签的概
  • 从 Konvajs 中的空白区域拖动来拖动变压器的最佳方法是什么?

    我目前正在关注本指南 https konvajs org docs select and transform Basic demo html选择舞台中的形状并将它们放入变压器中 如果可能的话 我想拖动整个 Transformer 及其所有内
  • 仅使用 css 更改“选项”的高度

    例如 在代码中 选项 太低 我想仅使用css 无javascript 将其提高
  • 获取 -bash:mvn:找不到命令

    我尝试在 profile 文件中设置 Maven PATH 并在终端 Mac OSX 中使用导出命令 但是 在运行 mvn 命令时 得到 bash mvn command not find 请帮忙 你具体设置了什么 你是否像这样设置 PAT
  • 表单提交按钮在 Google Chrome 中不起作用(jQuery Validate)

    我在演示页面上使用 jQuery Validate 插件 由于某种原因 提交 按钮在 Google Chrome 中不起作用 我怀疑这与自动填充功能有关 但我不确定 这几天一直在为这个问题苦苦挣扎 这是链接 联系表 http julianj
  • 如何在 C++ 中 sleep() 线程

    我正在编写一个简单的程序 它创建一个线程 休眠 20 秒 然后终止该线程 下面的代码可以编译 但无法休眠并在运行时崩溃 在所有 cout 行运行之后 我不确定出了什么问题 我已尽力模仿该主题的其他线程 哈 我应该使用不同的方法吗 使用Win
  • 访问 Visual Studio 2017 的私有注册表配置单元

    Visual Studio 使用私有注册表配置单元而不是 污染 系统注册表 通常可以在如下位置找到 C Users Abx AppData Local Microsoft VisualStudio 15 0 4b0ba1c0 private
  • Firestore 连接执行线程时出现问题

    首先 如果标题有误导性 我想道歉 英语不是我的母语 我不知道如何命名这篇文章 现在的问题是 我有一个 Activity 显示 Firebase 项目中存储的有关用户的数据 数据在 Firebase 用户 显示名称 电子邮件和个人资料图片 和
  • 固定容器内的随机移动

    我正在寻找创建一些可以在固定 div 容器内随机移动的东西 我喜欢在这个例子中物体移动的方式 我发现搜索这个网站 http jsfiddle net Xw29r 15 http jsfiddle net Xw29r 15 jsfiddle上
  • PHP:URL重写

    我想知道如何在没有 php 扩展名的情况下分页 url 例如 这是我的网站 http mywebsite com http mywebsite com 现在 无论何时我从主页单击任何画廊 它都会转到页面 gallery php 其中包含画廊
  • PDFBox - 将图像转换为 PDF,PDF 分辨率

    我正在使用 PDFBox v2 将 jpg 图像转换为 PDF JPG 图像已在文件系统中 因此我只需将其拾取并将其转换为 PDF 下面是我的代码 public void convertImgToPDF String imagePath S
  • iPhone 上的性能计数器

    我正在尝试寻找 iPhone 上 incode 性能监控的最佳方法 在 Windows 平台上我会使用以下函数 QueryPerformanceCounter LARGE INTEGER ctr 查询性能频率 LARGE INTEGER f
  • 我可以指望 ctl00_PagePlaceHolder_myId 保持不变吗?

    我需要从 Silverlight 控件将某些内容推送到我的 ASP NET Web 表单页面中 我设置了文本框的 ID 并且按照需要 ASP NET 有用地 添加了 ctl blah blah 内容 我可以假设这将始终与它放在我的 id 开
  • 将目录上传到 pinata ipfs API

    我正在尝试将 png 目录上传到 pinata 但我不断收到此错误 error Invalid file path C Users myname Documents Coding Projects nft art reveal 1 png