01The error
You paste a link into Download Video, press Download, and it stops with:
ERROR: No module named expat; use SimpleXMLTreeBuilder insteadIt shows up most with Facebook links, but it can happen with other sites too. Your files and the app are fine. The problem is in yt-dlp, the free downloader the app uses, and takes a few minutes to fix.
02Why it happens
OneMacApp downloads videos with your own copy of yt-dlp, usually installed through Homebrew. yt-dlp is written in Python, and to read some sites it needs the part of Python that understands XML.
Recent Homebrew versions of Python expect that part to be backed by a newer XML library than the one built into macOS 26.0, 26.1 and 26.2. On those versions Python can’t load it, and yt-dlp stops with this message. macOS 26.3 and later include the newer library, so the same yt-dlp works there.
03Check it’s this problem
Open Terminal (in Applications › Utilities), paste these two lines, and press Return:
sw_vers -productVersion
/opt/homebrew/opt/yt-dlp/libexec/bin/python -c "import pyexpat"If the first line prints
26.0, 26.1 or 26.2, and the second ends with Symbol not found: _XML_SetAllocTrackerActivationThreshold, this guide is for you.04Fix 1: Update macOS
The simplest fix, with nothing else to change:
- Open System Settings › General › Software Update.
- Install macOS 26.3 or later and restart your Mac.
- Open OneMacApp and try the download again.
05Fix 2: Use the standalone yt-dlp
If you can’t update macOS right now, swap Homebrew’s yt-dlp for the official standalone version. It carries its own copy of Python, so the version of macOS doesn’t matter.
Quit OneMacApp, then paste these lines into Terminal and press Return:
brew uninstall yt-dlp
mkdir -p ~/.local/bin
curl -L -o ~/.local/bin/yt-dlp https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos
chmod +x ~/.local/bin/yt-dlp
~/.local/bin/yt-dlp --versionThe last line prints a version number such as
2026.08.19. Open OneMacApp again: it finds the new yt-dlp on its own, and Download Video works as before.Sites change often, so keep yt-dlp up to date. Once in a while, run:
~/.local/bin/yt-dlp -U06Still not working?
Write to [email protected] with the full error message and what the two lines in Check it’s this problem printed, and we’ll help you sort it out.
See all guides, or write to [email protected] about anything else.