MaskWright

2026-06-24 · Morgan Ellis · 816 words

Facebook Ads Library research locally

Public Ads Library. Manual and official tools first. No login scrape. This commercial page is how a local room looks at ads the Library already shows.

Facebook Ads Library research locally 1

The Facebook Ads Library is a public catalog Meta already chose to show. This commercial page is how a local profile looks at those cards. Manual first. Official tools second. No login scrape. The 2023 harvest scripts are the weak competitor pages. I will not refresh them with a stealth stack.

What web scraping is starts with official channels. The Library UI is one. Meta's official APIs and partner tools are another when they cover the job. A headed harvester pointed at Ads Manager is not a third.

What the Library already offers

You can open the Library signed out, search a brand or a topic, and read creatives the publisher marked as public. That is the research surface. A person in a chair can take notes, screenshot a card, and close the tab.

If Meta published an official API or export that covers the same cards, use that door for volume. Official APIs versus headed collection. Paying for access or accepting a narrower field list is the contract. Paging the HTML because a gist said so is not.

Ethics here start with official channels and a stop when the method is forbidden. Scraping ethics we follow. robots.txt and terms still come first. If the path is disallowed for clients, a person can still look, and a program should not harvest.

The cold profile on Windows

Open a profile that holds no Business Manager, no personal Facebook, no brand Page admin. The Library look must not inherit those cookies. Facebook Business Manager isolation is the work-profile note. This page is the research-profile note. They do not meet.

Take what you need by hand. Save screenshots and notes into a folder outside maskwright-data. Storing research files. Chromium user-data dirs are not encrypted by our code. A Library PNG in the BM profile's Downloads is a mixed folder.

You do not need a script UA for a look you could have done by hand. User-agent honesty in research is for clients. A person is the user agent.

SurfaceHow I lookHow I skip
Public Ads Library UICold profile, signed out, notesPaging client
Official Meta API / partnerDocumented pull, tokens in a repoUnofficial Graph calls
Ads Manager for my campaignsEntity profile, operator workUsing it to page someone else's cards
Page inbox / billingNot researchLogin scrape

What I will not do with this query

I will not publish a paging client against the Library. I will not document unofficial Graph calls. I will not attach Playwright to the Library. Playwright for pages you own is the only Playwright note we bless, and MaskWright does not ship it.

I will not scrape Ads Manager, billing, or a Page inbox to "complete" a competitive file. Scraping behind a login is not research. Those surfaces are operator work in the entity profile, or official exports the business already has a right to pull.

I will not hide a collector as a person so the Library serves more cards. A captcha on that path is a stop.

If you cannot finish the look in an afternoon as a person, you do not finish it as a fleet. Public pages stay slow.

A week of Library notes without a harvest

Monday: cold profile, three brand searches, notes in D:\ops\research\ads-library. Tuesday: official export if the business already has API access for a report you are allowed to pull. Wednesday: the BM profile for your campaigns, never for paging someone else's cards through Ads Manager. Thursday: compare the notes to a decision, not to a quota. Friday: empty the cold profile's download tray into the research folder and close it.

That week produces a file you can provenance. It does not produce a scrape log.

How this sits next to ads work

Competitive notes belong in the research folder. The live ads account belongs in the BM profile. Pixels stay in brand profiles. A Library screenshot is not a reason to open the advertiser session.

MaskWright 0.1 isolates those folders on Windows. It has no Library integration, no Meta API client, and no RPA. Bulk start will not walk search results for you.

If you need a dataset Meta does not show in the public UI, you ask Meta, you use a licensed partner, or you do without. Those are the honest options.

The Scraping hub has the ethics cluster. This page is only the Library: public cards, a cold profile, official tools when you need volume.

FAQ

Can I automate Library searches with Playwright?

Not as a method I will write. Look as a person, or use an official API you were given. Playwright stays on hosts you own.

Should I open the Library in my Business Manager profile?

No. Keep the look cold. BM is for campaigns you run, not for paging public cards through a live login.

Related notes