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

a month 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