Nodes/Playbook Nodes/Playbook Image (External)
ComfyUI Node

Playbook Image (External)

An image that arrives by URL (or falls back gracefully)

By playbook3d·Created 2 years ago·Updated about a year ago· 21
Playbook Image (External)
  • default_value
  • Image
idNode ID
labelNode Label
default_url

Playbook Image fetches a picture from a URL and hands it to your workflow as a normal ComfyUI IMAGE. Nothing exotic - it's the "load an image from the internet" node, which is one of those things you think you'll never need until a workflow wants a reference shot that lives on somebody's server.

It's part of Playbook Nodes, the ComfyUI side of Playbook3D, the cloud 3D render service. In that world this node is an input valve: when a workflow runs on their platform, an image you've dropped into the web UI (as a URL) becomes a real ComfyUI image for IP-Adapter reference, img2img conditioning, or whatever you're doing. Locally, it's simply a URL-to-image loader with a fallback.

How it works

Two optional inputs do the real work:

  • default_url - a string. If it starts with http, the node downloads it with requests, opens it with PIL, flips the EXIF orientation, converts to RGB, and returns the image tensor. That's the happy path.
  • default_value - an IMAGE. If the URL is missing, invalid, or the download fails, the node catches the exception and returns default_value instead. No error, just the fallback.

The required id and label strings are the platform-binding metadata you'll see on every external node in this pack - inert locally.

So the behavior is: URL wins if it's valid, otherwise whatever image you wired in as default_value comes through, and if neither is present you get None. It's the same quiet-failure philosophy as the render-pass nodes: designed to degrade, not to shout.

Install

Same as every node in this pack. ComfyUI Manager, search for Playbook Nodes, or:

cd ComfyUI/custom_nodes
git clone https://github.com/playbook3d/playbook3d-comfyui-nodes

Restart ComfyUI. No API key needed here - the node makes an outbound request to whatever URL you give it, but it doesn't talk to Playbook's servers. No models, no extra dependencies beyond what ComfyUI bundles (requests, PIL, numpy, torch).

Troubleshooting

The main thing to know is what it does not validate. It only checks that the URL starts with http - it won't verify the server responds, that the content is an image, or that the URL is reachable. A typo'd link or a dead endpoint just triggers the fallback path, so if you're getting your default_value back and expected a download, the URL is the suspect. Check your console: it prints "Exception while downloading Image" with the reason. One more gotcha - this only handles single images. If you point it at a page instead of a direct image file (a .png/.jpg endpoint), you'll get an HTML file that PIL can't open, and again, silent fallback. Give it a direct file URL and it's rock solid.

CategoryPlaybook 3D

Inputs (4)

NameTypeDefaultDescription
idSTRINGNode ID
labelSTRINGNode Label
default_valueoptIMAGE
default_urloptSTRING

Outputs (1)

NameTypeDescription
ImageIMAGE