import requests import os META_ADS_TOKEN = os.getenv("EAAVtBlZBaes0BQch8e5ldaeEfeCShyddrCAv26FeI05lODUhBrOMHoYcCUs3nQmqHnDZAKT4uTZARXl3RlYYdcmcQs8Ay8omMsZCnrHLnhFbx3yu6bZAompGIPgmQhqu9I29XdtMU2FWfyMBR7bPZAJfsAZC4JGljaJ0IJ1Ga6ncZCcJguNSByedfbkbyLvIiMsl2L8pandHm0L5ZCAjJmNnjdflLzXZBPOp5ButlCMeU2j9yvq6HGX801ZBUwa9ZAe6mv3D3plSsXjIWgHzk1yYQ2OgDzpX") BASE_URL = "https://www.facebook.com/ads/library/?active_status=all&ad_type=political_and_issue_ads&country=IN&is_targeted_country=false&media_type=all" def fetch_live_ads(keyword, country="IN", limit=20): if not META_ADS_TOKEN: raise ValueError("META_ADS_TOKEN not set") params = { "search_terms": keyword, "ad_reached_countries": country, "ad_type": "ALL", "fields": ( "page_name," "ad_creative_body," "ad_creative_link_title," "ad_delivery_start_time" ), "limit": limit, "access_token": META_ADS_TOKEN } response = requests.get(BASE_URL, params=params) response.raise_for_status() ads = response.json().get("data", []) return [ad for ad in ads if ad.get("ad_creative_body")]