import { chromium } from 'playwright' import { z } from 'zod' import { openai } from '@ai-sdk/openai' import LLMScraper from './../src' // Launch a browser instance const browser = await chromium.launch() // Initialize LLM provider const llm = openai('gpt-4o') // Create a new LLMScraper const scraper = new LLMScraper(llm) // Open new page const page = await browser.newPage() await page.goto('https://www.bbc.com') // Define schema to extract contents into const schema = z.object({ news: z.array( z.object({ title: z.string(), description: z.string(), url: z.string(), }) ), }) // Generate code and run it on the page const { code } = await scraper.generate(page, schema) console.log('code', code) const result = await page.evaluate(code) const data = schema.parse(result) // Show the parsed result console.log('result', data) await page.close() await browser.close()