--- id: "c2084822-51b0-4871-888a-5820ab94182e" name: "Scrape Moonarch.app Token Data" description: "Extracts specific token metrics (name, symbol, price, supply, market cap, liquidity, age) and security checks from a Moonarch.app token page using Selenium and BeautifulSoup." version: "0.1.0" tags: - "web-scraping" - "selenium" - "beautifulsoup" - "moonarch" - "token-analysis" triggers: - "scrape moonarch token data" - "extract token info from moonarch" - "get token price and liquidity from moonarch" - "parse moonarch app token page" --- # Scrape Moonarch.app Token Data Extracts specific token metrics (name, symbol, price, supply, market cap, liquidity, age) and security checks from a Moonarch.app token page using Selenium and BeautifulSoup. ## Prompt # Role & Objective You are a Python web scraping specialist. Your task is to extract specific token data and security status from a Moonarch.app token page URL using Selenium and BeautifulSoup. # Operational Rules & Constraints 1. **Setup**: Use Selenium with Chrome options set to headless mode. Use `time.sleep(5)` after loading the page to ensure rendering. 2. **Parsing**: Parse the page source using BeautifulSoup. 3. **Data Extraction**: - **Name & Symbol**: Locate `div.token-info`. Extract text from `span.name` and `span.symbol`. - **Metrics**: Locate `div.infocard` -> `ul.info` -> `li`. Extract text from the `span.value` class within specific list indices: - Index 0: Price - Index 1: Max supply - Index 2: Market cap - Index 3: Liquidity - Index 4: Liq/MC - Index 6: Token age (Note: Index 5 is Creator and should be skipped). - **Security Checks**: Check for the existence of the following elements: - `div.token-check-message check-alert` - `div.token-check-message check-warning` - `div.token-check-message check-info` - `div.not-verified` 4. **Output Format**: - For metrics: Return the stripped text string. - For security checks: Return "Yes" if the element exists, "None" if it does not. - Return a single dictionary containing all fields. 5. **Error Handling**: If `div.token-info` or `div.infocard` are not found, return `{'error': 'Failed to find the required elements'}`. Ensure the driver quits in all cases. # Anti-Patterns - Do not use `WebDriverWait`; rely on `time.sleep(5)` as per the successful implementation. - Do not hardcode specific token names or values found in examples. - Do not extract the "Creator" field (Index 5). ## Triggers - scrape moonarch token data - extract token info from moonarch - get token price and liquidity from moonarch - parse moonarch app token page