Show HN: Simple script to cripple personalized targeting from Facebook
gist.github.com
gist.github.com
const wait = () => new Promise(resolve => setTimeout(resolve, 1000));
const getElementsByAriaLabel = (label) => document.querySelectorAll(`[aria-label="${label}"]`);
const getElementsByRoleAndWidth = (role, width) =>
Array.from(document.querySelectorAll(`[role="${role}"]`)).filter(el => el.clientWidth === width);
const getElementsByText = (text) => Array.from(document.querySelectorAll('*')).filter(el =>
Array.from(el.childNodes).some(node => node.nodeType === Node.TEXT_NODE && node.textContent.includes(text))
);
async function clickAndWait(elem) {
if (!elem)
return;
elem.click();
await wait();
}
await clickAndWait(getElementsByText("See more")[0]);
const ads = getElementsByRoleAndWidth('listitem', 508);
for (const ad of ads) {
console.log(ad.childNodes[0].textContent)
await clickAndWait(ad.childNodes[0]);
await clickAndWait(getElementsByText('They uploaded or used a list to reach you.')[0]);
const dont_allow_btns = getElementsByText('Don\'t allow');
for (const btn of dont_allow_btns) {
btn.click();
}
await wait();
await clickAndWait(getElementsByAriaLabel('Back')[2]);
await clickAndWait(getElementsByAriaLabel('Back')[2]);
}Ads are 509 pixels wide coming in 3 ... 2 ... 1 ...
Anyone using this may want to s/1000/2000/ on the first line.
My hack is to live in a country where the local language is not my own, and not the one I have set in my Facebook settings.
As a result, Facebook rarely has advertisements that can target me, because my language has been filtered out by the advertisers.
When one does appear, it’s nearly always in the local language, so I’m kind of deaf to it and I’m not going to actively respond to anyway.
Luckily they haven’t figured that out yet, even though I’ve been an Facebook user for many years.
Whither Geocities and Compuserve?
an easy way to avoid the problem of seeing ads on facebook is.. to avoid facebook.
yes, this doesn't solve the privacy and ad-affiliate network problem -- but that wasn't the stated problem.
For the times I need to wade thru the muck mbasic + adblock means the only ads I see are recommended groups. Those are usually history geeks focused on cities thousands of miles away from anywhere I've been in the past decade.
One you're giving them information/still seeing ads
The other, they're guessing and you're free from the mind rot. Distance surely hurts their accuracy.
Can't stop them guessing but you can stop being their authoritative source. You've heard the whole, "we're in charge of our response, not the problem", right?
Sometimes I wonder just how good this adtech really all is when the best they can do is figure out I speak English (browser language) and live not in an English speaking country (IP address) and just assume therefore I am American.
I'd take as a signal your online cloaking is working as intended. I often get very random ads and recommendations in languages I don't even speak so I think my online anonimity fu is working as intended.
Source - worked with ad tech a few years ago.
The option has been removed since, making me part of an ever shrinking community of essentially random people - not a particularly interesting target for advertisers.
I’m assuming GP meant DPO, for Data Protection Officer, the person responsible for enforcing GDPR (or similar laws) in a company.
"Under the law the Data Protection Authorities (DPAs) should enforce our rights in each EU member state."
List of DPAs:
Source: https://ico.org.uk/make-a-complaint/data-protection-complain...
> You'll need: a copy of the complaint you have made to the organisation about how they have used your information
[0] https://www.theregister.com/2024/05/02/meta_facebook_tool/
[1] https://slate.com/technology/2021/10/facebook-unfollow-every...
The dissonance between what we know is good for us and our actual behaviour in the face of addiction is truly incredible.
But I take your point. Using clinical terms in another context creates an unnecessary/unwanted association for readers.
That is literally true though. Have you ever read one of those cookie banners to see the list of organizations stalking you at all times on the web? It's often in the high hundreds. Nearly every electronic device manufactured in the last 10 years is stalking you at all times. If you don't have an active ad blocker, they also harass you constantly in a personalized way using the information they gather by stalking you.
If a bunch of people analyze your psychology and then coordinate to use what they find to scare you, that's gangstalking
When an AI does it.... it's expected advertising behavior?
I don't like that double standard. Gangstalking is gangstalking.
Okay
Give me your identity
Email, phone number, address, family members, etc.
I can show you how gangstalking works with that information
Is that something you'd be willing to share here?
Though, if you're into privacy, you're probably not on Facebook.
But a good number of people find the kind of hyper-targeted advertising enabled by the tech industry very creepy.
Anything more granular than a billboard gives me the heebie-jeebies.
It cuts off a refinement step
So you’re getting the same number of ads either way, even if Facebook can’t make more money off you.
Whatever opportunity you’re imagining where a publisher would a new ad once ads become less profitable, why wouldn’t they be showing a (more profitable) ad right now?
And at least one European Neo-bank no longer does this. I don't think I was the only/first one to report them, and unfortunately I don't think they were fined for doing it, but I sure did report them.
This page isn't available
The link may be broken or the Page may have been removed. Check to see if the link that you're trying to open is correct.
Go to Accounts Centre
also Uncaught SyntaxError: await is only valid in async functions, async generators and modulesI made the mistake of having the same email address for Facebook as for registering to random online shops...
Also, these scripts break often as they depend on observable behaviors that are not contracts. It's Hyrum's law again.
How's this technique compare to just staying logged out of Facebook? Or using it solely in a sandboxed browsing environment?
And even if you brick your devices and pull the battery, your data is collected by other people's mobile devices.
It all runs to data brokers in the end, and that data has a reliance on Facebook for additional refinement.
This technique impacts that refinement step.
And
It's a -HUGE- surface area to cover
When IoT and IoB comes online, it will be near impossible to stop this kind of stuff
> IoB (Internet of Behavior) as an extension of the IoT, which focuses on capturing, processing, and analyzing the “digital dust” in people’s daily lives. The term ”digital dust” is a good metaphor for the traces that users leave behind in their Internet activities. As the collection of digital dust from everyday life increases, including data that spans both the digital and physical worlds, information can in turn influence users’ behaviors.
Basically, the end of the world
I recall some surprising legal outcomes in recent years, for example jail for posting fake Yelp reviews. Anyone know of any case law for this sort of scripting?
My settlement conditions are already prepared
And they are non-monetary and super simple
Question, could someone explain the exact impact this would have for Facebook & a person's experience with ads?
I kinda have a few guesses, but am curious if anyone can weigh in with more info, how this is crippling and overall what the effect should be. Thanks!
Facebook then refines what the third-parties have with what Facebook has (enriches this coarse data with rich psychographic data that only Facebook has)
This cuts off that relationship
VM172:14 Uncaught TypeError: Cannot read properties of undefined (reading 'click') at <anonymous>:14:71 (anonymous) @ VM172:14
Okay, I'll see what I can do to wait for NETWORK_IDLE or something
bqmjjx0kac's edits worked great
and this on Chrome on macOS: TypeError: Cannot read properties of undefined (reading 'click') at <anonymous>:14:71
(for some that is a relief for others it is serious)