Dribbble Pinterest Search
Use English tags, not Chinese keywords, for public design search on Dribbble and Pinterest. Treat search pages as candidate discovery and detail pages as field enrichment.
Keep the workflow public-only:
- - Do not require cookies, sessions, or login-only APIs.
- Prefer browser automation for both platforms.
- Use detail pages only when search results do not expose a reliable high-resolution image, author, or publish/update time.
Workflow
- 1. Choose a category and tag set.
- For B-end/data-visualization use cases, load
references/tag-taxonomy.md.
- Prefer Dribbble for dashboard, scene, motion, and high-quality UI shots.
- Prefer Pinterest for color, infographic, isometric, and reference-heavy categories.
- 2. Build the public search URL.
- Dribbble:
https://dribbble.com/search/<urlencoded-tag>
- Pinterest: INLINECODE1
- 3. Collect candidate cards from the search page.
- Dribbble: find
a[href*="/shots/"], then keep only links matching
/shots/<numeric-id>.
- Pinterest: find
a[href*="/pin/"], then keep only links matching
/pin/<numeric-id>/.
- 4. Normalize search-card fields first.
- Always capture at least:
title,
platform,
source_url,
cover_image_url,
keyword/tag.
- If search-card author or time is weak, leave it empty and enrich from the detail page.
- 5. Enrich from the detail page when needed.
- Use detail pages for high-resolution cover images.
- Use detail pages for
author_name.
- Use detail pages for
publish_time or
updated_time only when the public page exposes it reliably.
- 6. Return a normalized public-only record.
- Keep unstable fields nullable.
- Record which tag matched.
- Do not fabricate publish times or authors.
Extraction Rules
Use these field priorities:
- -
title: search-card text first, then detail-page meta/title. - INLINECODE15 : prefer highest
srcset candidate or detail-page og:image. - INLINECODE18 : prefer detail-page author metadata or title pattern.
- INLINECODE19 : prefer detail-page
og:updated_time, createdAt, datePublished, or equivalent. Leave null when unavailable. - INLINECODE24 : use normalized title or public description snippet.
Platform-specific details live in:
Guardrails
- - Stay within public pages and public metadata.
- Expect DOM changes and anti-bot behavior; selectors are heuristics, not guarantees.
- Treat Dribbble publish time as unstable on public pages.
- Treat Pinterest
og:updated_time as the best public timestamp unless richer relay data is needed. - Prefer English tags even for Chinese design topics.
Output Shape
Normalize results into a shape close to:
CODEBLOCK0
Dribbble Pinterest 搜索
在 Dribbble 和 Pinterest 上进行公开设计搜索时,请使用英文标签,而非中文关键词。将搜索结果页面视为候选发现页,将详情页面视为字段补充页。
保持工作流程仅限公开访问:
- - 不需要 Cookie、会话或仅限登录的 API。
- 两个平台均优先使用浏览器自动化。
- 仅在搜索结果未提供可靠的高分辨率图片、作者或发布时间/更新时间时,才使用详情页面。
工作流程
- 1. 选择类别和标签集。
- 对于 B 端/数据可视化场景,加载
references/tag-taxonomy.md。
- 仪表盘、场景、动效和高质量 UI 截图优先使用 Dribbble。
- 色彩、信息图、等距图和参考密集型类别优先使用 Pinterest。
- 2. 构建公开搜索 URL。
- Dribbble:https://dribbble.com/search/
- Pinterest:https://www.pinterest.com/search/pins/?q=&rs=typed
- 3. 从搜索结果页面收集候选卡片。
- Dribbble:查找 a[href*=/shots/],仅保留匹配 /shots/<数字ID> 的链接。
- Pinterest:查找 a[href*=/pin/],仅保留匹配 /pin/<数字ID>/ 的链接。
- 4. 首先标准化搜索卡片字段。
- 始终至少捕获:title、platform、sourceurl、coverimage_url、keyword/tag。
- 如果搜索卡片的作者或时间信息不完整,留空并从详情页面补充。
- 5. 必要时从详情页面补充信息。
- 使用详情页面获取高分辨率封面图片。
- 使用详情页面获取 author_name。
- 仅在公开页面可靠显示时,才使用详情页面获取 publishtime 或 updatedtime。
- 6. 返回标准化的仅限公开访问的记录。
- 不稳定的字段保留为可空。
- 记录匹配的标签。
- 不虚构发布时间或作者。
提取规则
使用以下字段优先级:
- - title:优先使用搜索卡片文本,其次使用详情页面的 meta/title。
- coverimageurl:优先选择最高 srcset 候选或详情页面的 og:image。
- authorname:优先使用详情页面的作者元数据或标题模式。
- publishtime:优先使用详情页面的 og:updated_time、createdAt、datePublished 或等效字段。不可用时设为 null。
- summary:使用标准化的标题或公开描述片段。
平台特定细节位于:
防护措施
- - 仅限公开页面和公开元数据。
- 预期 DOM 变化和反爬虫行为;选择器为启发式规则,不保证有效。
- 将 Dribbble 的发布时间视为公开页面上的不稳定字段。
- 将 Pinterest 的 og:updated_time 视为最佳公开时间戳,除非需要更丰富的中继数据。
- 即使是中国设计主题,也优先使用英文标签。
输出格式
将结果标准化为接近以下格式:
json
{
title: ,
platform: dribbble|pinterest,
source_url: ,
coverimageurl: ,
author_name: ,
publish_time: null,
keyword: ,
category: ,
matched_tags: []
}