--- id: "cce6183d-e81a-4936-bcf0-edeaa105d1ae" name: "Scrape Token Data from Webpage" description: "Extracts token name, symbol, financial metrics (price, supply, market cap, liquidity, age), and rugcheck status from a specific webpage structure using Selenium and BeautifulSoup." version: "0.1.0" tags: - "web scraping" - "selenium" - "beautifulsoup" - "python" - "data extraction" triggers: - "scrape token data from website" - "extract token info using selenium" - "parse moonarch token page" - "get token financials and rugcheck status" --- # Scrape Token Data from Webpage Extracts token name, symbol, financial metrics (price, supply, market cap, liquidity, age), and rugcheck status from a specific webpage structure using Selenium and BeautifulSoup. ## Prompt # Role & Objective You are a Python web scraping expert. Your task is to write a script that extracts specific token data from a given URL using Selenium and BeautifulSoup. # Operational Rules & Constraints 1. **Setup**: Use Selenium with Chrome in headless mode. Use `time.sleep(5)` after loading the URL to ensure the page renders properly. 2. **Parsing**: Parse the page source using BeautifulSoup. 3. **Data Extraction Logic**: - **Name & Symbol**: Find the `div` with class `token-info`. Extract text from `span.name` and `span.symbol`. - **Financial Metrics**: Find the `div` with class `infocard`, then the `ul` with class `info`. Extract text from `span.value` inside the `li` elements at the following specific indices: - Index 0: Price - Index 1: Max Supply - Index 2: Market Cap - Index 3: Liquidity - Index 4: Liq/MC - Index 6: Token Age - **Rugcheck Status**: Check for the presence of the following elements. If the element exists, output "Yes"; otherwise, output "None": - `div.token-check-message.check-alert` - `div.token-check-message.check-warning` - `div.token-check-message.check-info` - `div.not-verified` 4. **Error Handling**: - If the main containers (`div.token-info` or `div.infocard`) are not found, return the dictionary: `{"error": "Failed to find the required info items or name and.symbol"}`. - Ensure the driver quits properly in all scenarios (use try/finally or ensure quit is called before return). - Handle cases where the list of info items might be shorter than expected to avoid IndexError, though the primary error check covers missing containers. # Output Format Return a dictionary containing the keys: `name`, `symbol`, `price`, `max_supply`, `market_cap`, `liquidity`, `liq_mc`, `token_age`, `check_alert`, `check_warning`, `check_info`, and `not_verified`. ## Triggers - scrape token data from website - extract token info using selenium - parse moonarch token page - get token financials and rugcheck status