Blingo - Blog HTML Translator with AI avatar
Blingo - Blog HTML Translator with AI

Pricing

Pay per usage

Go to Apify Store
Blingo - Blog HTML Translator with AI

Blingo - Blog HTML Translator with AI

Scrapes blog pages and translates visible text content to multiple target languages using lingo.dev AI-powered localization, preserving HTML structure.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Lofomachines

Lofomachines

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

11 days ago

Last modified

Share

Blog HTML Translator

An Apify Actor that scrapes blog pages and translates all visible text content to multiple target languages using AI-powered localization, while preserving the original HTML structure.

🌟 Features

  • Multi-language support: Translate to 30+ languages simultaneously
  • HTML structure preservation: Keeps all HTML tags, attributes, and formatting intact
  • Smart text extraction: Only translates visible user-facing text (ignores scripts, styles, hidden elements)
  • Translation dictionary: Optionally outputs a JSON mapping of original texts to translations
  • Auto language detection: Automatically detect source language or specify manually
  • Concurrent processing: Fast translation with parallel API calls
  • Detailed logging: Track progress and debug issues easily

📥 Input

FieldTypeRequiredDescription
blog_urlsArrayYesURLs of blog pages to translate
source_languageStringNoSource language code or "auto" for detection
target_languagesArrayYesTarget language codes (e.g., ["es", "fr", "de"])
lingo_api_keyStringYesYour Lingo.dev API key
include_translation_dictionaryBooleanNoInclude original→translated text mapping
max_concurrent_pagesIntegerNoMax pages to process concurrently (1-10)
request_timeout_secsIntegerNoTimeout per page request (10-120 seconds)
proxy_configurationObjectNoOptional proxy settings

Example Input

{
"blog_urls": [
{ "url": "https://blog.example.com/my-article" },
{ "url": "https://blog.example.com/another-post" }
],
"source_language": "auto",
"target_languages": ["es", "fr", "de", "it"],
"lingo_api_key": "your-api-key-here",
"include_translation_dictionary": true,
"max_concurrent_pages": 3
}

📤 Output

Dataset

Each translation produces a dataset item with:

{
"url": "https://blog.example.com/my-article",
"page_title": "My Amazing Article",
"source_language": "en",
"target_language": "es",
"target_language_name": "Spanish",
"html_key": "html-my-article-a1b2c3d4_es",
"texts_extracted": 45,
"texts_translated": 45,
"word_count": 1250,
"processing_time_ms": 3420,
"status": "success",
"timestamp": "2024-01-15T10:30:00Z",
"translation_dictionary": {
"Hello World": "Hola Mundo",
"Read more": "Leer más"
}
}

Key-Value Store

Translated HTML files are stored in the key-value store with keys like:

  • html-{url_slug}_{language_code} - Individual translated HTML files
  • SUMMARY - JSON summary of all translations

🌍 Supported Languages

CodeLanguageCodeLanguage
enEnglishplPolish
esSpanishruRussian
frFrenchukUkrainian
deGermanjaJapanese
itItalianzhChinese
ptPortuguesekoKorean
nlDutcharArabic
trTurkishsvSwedish
daDanishnoNorwegian
fiFinnishcsCzech
huHungarianroRomanian
elGreekthThai
viVietnameseidIndonesian
msMalayhiHindi
bnBengalitaTamil
teTeluguheHebrew
faPersian

🔧 How It Works

  1. Scraping Phase: Uses Playwright to render JavaScript-heavy pages and extract full HTML
  2. Text Extraction: Parses HTML and extracts only visible text nodes (excluding scripts, styles, hidden elements)
  3. Translation: Sends text batches to AI localization engine for translation
  4. HTML Reconstruction: Replaces original texts with translations while preserving all HTML structure
  5. Output: Saves translated HTMLs to key-value store and metadata to dataset

⚡ Performance Tips

  • Use max_concurrent_pages: 1 for rate-limited APIs
  • Set appropriate request_timeout_secs for slow-loading pages
  • Enable proxy if scraping sites with geo-restrictions
  • Use auto language detection only when source language varies

🔑 Getting Your API Key

  1. Visit lingo.dev
  2. Create an account
  3. Navigate to Projects → API Key
  4. Copy your API key

📝 Use Cases

  • Content localization: Translate blog posts for international audiences
  • Website migration: Prepare content for multi-language CMS
  • SEO expansion: Create localized versions for different markets
  • Content analysis: Extract translation dictionaries for terminology management

⚠️ Limitations

  • Large pages with many text nodes may take longer to process
  • Some dynamically loaded content may not be captured
  • Translation quality depends on the AI localization service

🐛 Troubleshooting

"Translation failed" errors: Check your API key is valid and has sufficient credits

Missing translations: Some text may be in elements not captured (try adjusting page load time)

Empty results: Ensure the URLs are accessible and contain visible text content