Our scraping API handles browsers, proxies, CAPTCHAs and HTML parsing on our side. Just give us a URL and receive the HTML, text or data.
Click on the green "Run ▶️" button to execute a script
const axios = require('axios') // See all available options at https://webscraping.ai/docs#operation/getQuestion const response = await axios.get('https://api.webscraping.ai/ai/question', { params: { api_key: "test-api-key", url: 'https://example.com', proxy: 'residential', question: 'What is this page about?' } }) .then(response => (response.data)) .catch(error => (error.response.data)) // Click “▶ run” to try this code live.
const axios = require('axios') // See all available options at https://webscraping.ai/docs#operation/getQuestion const response = await axios.get('https://api.webscraping.ai/ai/question', { params: { api_key: "test-api-key", url: 'https://httpbingo.org/html', question: "Summarize this page content" } }) .then(response => (response.data)) .catch(error => (error.response.data)) // Click “▶ run” to try this code live.
const axios = require('axios') // See all available options at https://webscraping.ai/docs#operation/getText const response = await axios.get('https://api.webscraping.ai/text', { params: { api_key: "test-api-key", url: 'https://example.com' } }) .then(response => (response.data)) .catch(error => (error.response.data)) // Click “▶ run” to try this code live.
const axios = require('axios') // See all available options at https://webscraping.ai/docs#operation/getHTML const response = await axios.get('https://api.webscraping.ai/html', { params: { api_key: "test-api-key", url: 'https://example.com' } }) .then(response => (response.data)) .catch(error => (error.response.data)) // Click “▶ run” to try this code live.
const axios = require('axios') // See all available options at https://webscraping.ai/docs#operation/getHTML const response = await axios.get('https://api.webscraping.ai/html', { params: { api_key: "test-api-key", url: 'https://ipapi.co/json/', country: 'ca' // available values are "us", "gb", "de", "it", "fr", "ca", "es", "ru", "jp", "kr" } }) .then(response => (response.data)) .catch(error => (error.response.data)) // Click “▶ run” to try this code live.
Simple rules with no hidden fees