python - 在 Python 中从 ColorHunt.co 获取调色板
问题描述
我正在为 Blender 创建一个颜色插件,我正在尝试从著名站点检索调色板。我想从ColorHunt开始。基本上,正如您在网站上看到的,有很多调色板。我想在一个包含该调色板中颜色的十六进制值的数组中获取所有可用的调色板,例如:(“FF0000”、“ab1234”、“cd337H”、“ff0066”)等等。那可能吗?
解决方案
是的,至少在今天是有可能的。
但是,如果您正在构建一个想要在商店发布的应用程序,请不要使用此方法,因为我们要从中获取调色板的端点可能会更改,恕不另行通知。
故事
所以,我一直在寻找一种方法来获取那些美妙的调色板,在与 Postman 进行了几次尝试后,我发现 Gal Shir(或构建网站的人)使用 POST 方法获取调色板列表。
长话短说,您可以创建一个 POST 请求来获取这些调色板。
基本上,有 4 种类型的请求:随机的、新的、时尚的和流行的。
请求的参数如下:
- 标题 Content-Type 是
application/x-www-form-urlencoded; charset=UTF-8
- 端点是
https://colorhunt.co/php/feed.php
- 请求正文是
{'step': 0, 'sort': 'random','tags': ''}
正如我告诉过你的,有 4 种类型的请求,所以你可以将sort
密钥从更改random
为任何其他类型。
您将得到的响应属于以下类型,由您自行解析:
[{"code":"febfb3e1396c96d38cd0f9b1","likes":"1682","date":"4 years"},{"code":"2d4059ea5455f07b3fffd460","likes":"10191","date":"5 years"},...]
为简单起见,以第一个代码为例febfb3e1396c96d38cd0f9b1
。
您会看到一个图案,它是一个单一调色板的 4 个十六进制颜色代码系列:febfb3 | e1396c | 96d38c | d0f9b1
.
警告!
我警告您仅将此方法用于“娱乐”目的 (>.<),因为它不是官方 API,而且我不知道 Gal Shir 是否会构建一个(他说过一次)或者他不会不想。事实上,端点可能会再次改变。仅供参考,上个月我可以从https://colorhunt.co/hunt.php
端点获取调色板,但反应完全不同。
祝大家编码愉快!
推荐阅读
- database - Laravel 5.7 迁移 - 如何在可为空的外键上删除级联
- c++ - 如何从 GeoTIFF 数据创建 QImage(或正确解释)
- regex - 通过正则表达式模式查找索引位置并将其替换为 Scala 中的索引列表
- regex - Python 正则表达式拆分但保留某些字符进行拆分
- mysql - 如何在 MySQL 5.x 中使用多个连接更新 SELECT
- c++ - Add+Mul 使用 Intrinsics 变得更慢 - 我哪里错了?
- c# - 计算可配置小时之间的分钟数
- ios - 当用户在 iOS 应用程序中进行某些操作时如何启动 Apple Watch 应用程序
- python - 使用 mapnik 渲染道路
- python - 在 TensorFlow 中打印完整的张量值