Web Image Loader 🌐(URL Or Base64)
Pull an image straight off the web — URL or base64 — no browser, no save-as
- image
The normal ComfyUI image loader reads from a file on disk, which means every web image you want to use has to be downloaded, saved into input/, and reloaded first. Web Image Loader cuts that step: paste a URL (or a base64 data URI), and the image lands on its output port. It's the pack's most distinctive node and the natural inverse of its Image To Base64 🎨.
It's part of the Painting Coder Utils pack, and it's the only node there that touches the network - worth remembering on both sides of that fact: it's genuinely handy, and it's a node that makes HTTP requests.
How it works
You feed image_source a URL like https://example.com/cat.png or a base64 string (with or without the data:image/png;base64, prefix - it strips the header automatically). It detects which format it's looking at, downloads or decodes it, converts to RGB, and returns a proper IMAGE tensor. You can put several sources in, one per line, and it processes them as a batch.
Two features earn their keep:
- Caching -
use_cache(default on) keys a hash of the source and saves the fetched image to the pack's local cache directory, so re-running doesn't re-download. Turn it off if the URL points to something that changes and you want a fresh fetch. - Graceful failure - an unreachable URL or a garbage base64 string doesn't kill the workflow. It returns a placeholder image (a 512×512 block with an error message drawn on it) and logs the failure, so you can see which source broke instead of hunting through the console. An empty input returns a plain image rather than crashing.
preview_enabled (default on) controls whether the loaded image is written to ComfyUI's preview output.
Inputs and output
image_source- the URL or base64 string (multiline, so multiple sources work).use_cache- cache fetched images (default on).preview_enabled- show the image in the preview feed (default on).- Output:
image- the IMAGE tensor.
Where you'll use it
Dynamic workflows that pull reference images from the web, batch image ingestion from a list of URLs, or feeding an image that's being handed to you as a base64 payload (from an API response, a clipboard, or your own Image To Base64 node). It's also handy for prototyping with an online image before you commit to saving it locally.
Two honest cautions: this node makes outbound HTTP requests, so in a hardened or offline setup that's a consideration - and for large batch pulls you're better off scripting the downloads than letting the node fetch dozens of images one at a time. For one-off URL loading it's exactly right.
Install
ComfyUI Manager → Painting Coder Utils, or:
cd ComfyUI/custom_nodes
git clone https://github.com/jammyfu/ComfyUI_PaintingCoderUtils.git
Restart ComfyUI. No models or API keys - the only "dependency" beyond the pack's usual set (numpy, Pillow, torch, gradio) is the requests library, which ComfyUI already ships with. And if an inherited workflow can't find this node, the v0.3.0 namespace rename is the culprit - the bundled docs/fix/workflow_fixer.html repairs old JSON.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image_source | STRING | — | |
| use_cache | BOOLEAN | true | — |
| preview_enabled | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |