Recently I posted a tutorial How to make Multilanguage Landing Pages
Today I have something even better for you.
The last weeks I tested hundreds of campaigns and created dozens of landing pages that I translated in 50 languages each of them.
This takes lots of time so I thought there should be a solution to automate the process.
Some time ago I wanted to learn a bit coding in Python but didn´t find time for it.
Now I thought it would be a great opportunity to check Python again for the LP translation automation.
I did some brainstorming how I want it to be done and how it could work, fired up PyCharm and started working on it.
I still have basically zero knowledge about Python but I absolutely wanted to get it done so I spent some time the last days on Google, W3Schools and Stackoverflow to search for the things I wanted to do and now I can proudly tell: I DID IT 
Today I finished my script to auto translate landing pages in up to 50 languages in about 1 second.
Ok, that´s a bit exaggerated.
The script itself doesn´t translate the landing pages itself but it creates translation files that are ready for use and this really takes only a second or so but we need to do some preparations first.
It also doesn´t work 100% flawless in some situations but that´s not really an issue with the script but rather with the translations that we receive.
I will talk more about it later.
Let´s check now what needs to be done to get it working.
First I wanted to upload the script itself here so that everyone can run it on the own computer.
Of course you need to have Python installed on your computer to run Python scripts and you need to know how to run Python scripts.
To make it a little bit easier for all I decided to run it as a webapp so that everyone can just visit the website and use it without the need to have Python on the computer installed.
For the script to work properly your files have to be in a certain format.
First you need to prepare your landing pages for it.
The script works best for simple landing pages like THIS ONE
I will also use that LP as example for the script.
For this landing page there would be 5 things to translate, the title and 4 lines of text.

Keep the title tag empty and give each text part that you want to translate an own div ID.
The IDs always have to be stepX, beginning from 1 and then increasing for each part.
First text part would be id="step1", second would be id="step1", third would be id="step3" and so on.
Then add a script tag to call the translation file just before the closing body tag.
For the example LP the code would be
<!DOCTYPE html><html><head>
<base href="">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta name="robots" content="noindex, nofollow, noarchive">
<meta name="referrer" content="no-referrer">
<meta content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" name="viewport">
<link id="favicon" rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEG0lEQVQ4EQEQBO/7AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/7+0IA5eWVAPX1HQDHxwYAAAAAADo6+gAKCuMAFxdpAQkJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/yMhY/9HR8P9DQ///zs7///z8////////ICD//w4O///U1PH/w8NVAAAAAAT/pAD/AAAAAAAAAAAAAAAAABZBAAAG/QAALy8AAEVFAADMzAAAAQEAADAwAAAAAAAA8vIAACwsDgDU1Jz/9/fqAP+kAP//pAD//6QA//+kAP//173//wsL//8AAP//AAD//wAA//+oqP///////yAg//8AAP//AAD//w8P///f39YCAAAAAAAAAAAAAAAAABIzAAD8DwAA9fUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8fEAAPj4HwIAAAAAAAAAAAAAAAAAEjMAAMnNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxsYFAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAO7MAAA4NAAAAAAAAAAAAAAfHwAAZGQAACIiAAAAAAAAV1cAAE5OAAAAAAAAAAAAADo6+wD/pAD//6QA//+kAP//pAD//9e9//8ODv//AAD//1BQ////////////////////////yMj//wAA//8REf//3t7WAf+kAP8AAAAAAAAAAAAAAAAAFT4AABiKAAAvOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANbW8wAhIUoCAAAAAAAAAAAAAAAAAAAAAADrwgAA3XkAANHIAAAPDwAAAAAAAAAAAAAAAAAAAAAAABERAADTywAA6OhhAQkJxAH/pAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAFT0AABx+AAABFAAAx8sAAAAAAAA5NQAA/+sAAOOAAAFIxgEAAAAAAf+kAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEwAAATNQAAAAAAAO3LAADv0AAAAAAAAVwAAQAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA79AAAO/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVtcrx7EHPYAAAAABJRU5ErkJggg==" type="image/png" sizes="16x16">
<title></title>
<meta content="notranslate" name="google">
<style>
select:-moz-focusring {color:transparent;text-shadow:0 0 0 #000;}
a:focus,a:active,button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,select::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner {border:0;outline:0;}
input[type="submit"],input[type="button"],input[type="image"] {outline:0;}
button {-webkit-appearance:none;outline:none;border: none;}
a {text-decoration:none;}
.wrapper {margin:0 auto;text-align:center;}
.show {display:block;}
.hide {display:none;}
.clear {clear:both;}
.ltr {direction:ltr;display:inline-block;}
.rtl {direction:rtl;display:inline-block;}
</style>
<style type="text/css">
body{margin:0;padding:0;width:100%;font-family:Arial, Helvetica, sans-serif;font-size:12px;color:#333333;background-color:#ffffff}a{text-decoration:none;color:#333333}.clear{clear:both}.title{padding:20px 5px;color:#0080c8;font-size:25px;line-height:28px;font-weight:bold}.loadbar{padding:0 2px 5px}.imgloadbar{max-width:300px;width:100%}.txt{padding:0 0 20px;font-size:15px;line-height:19px}.desript{padding:20px 0 5px;max-width:450px}.s1,.s2{padding:0 5px 10px;font-size:18px;line-height:20px;text-align:left}.btnwrap{margin:10px 0}.bluebtn{max-width:100px;width:100%;padding:8px 0;color:#fff;font-size:20px;font-weight:bold;text-align:center;text-shadow:0 1px 0 rgba(0,0,0,0.20);-moz-text-shadow:0 1px 0 rgba(0,0,0,0.20);-o-text-shadow:0 1px 0 rgba(0,0,0,0.20);-ms-text-shadow:0 1px 0 rgba(0,0,0,0.20);-khtml-text-shadow:0 1px 0 rgba(0,0,0,0.20);border:1px solid #296283;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-khtml-border-radius:5px;background:#3f83b7;background:-moz-linear-gradient(top, #3f83b7 0%, #4b97d1 100%);background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#3f83b7), color-stop(100%,#4b97d1));background:-webkit-linear-gradient(top, #3f83b7 0%,#4b97d1 100%);background:-o-linear-gradient(top, #3f83b7 0%,#4b97d1 100%);background:-ms-linear-gradient(top, #3f83b7 0%,#4b97d1 100%);background:linear-gradient(to bottom, #3f83b7 0%,#4b97d1 100%)}.bluebtn:hover{background:#4991c8;background:-moz-linear-gradient(top, #4b97d1 0%, #3f83b7 100%);background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,#4b97d1), color-stop(100%,#3f83b7));background:-webkit-linear-gradient(top, #4b97d1 0%,#3f83b7 100%);background:-o-linear-gradient(top, #4b97d1 0%,#3f83b7 100%);background:-ms-linear-gradient(top, #4b97d1 0%,#3f83b7 100%);background:linear-gradient(to bottom, #4b97d1 0%,#3f83b7 100%)}.bluebtn:active{position:relative;top:1px}
</style>
</head>
<body class="">
<div id="app">
<center>
<div class="container">
<div class="title" id="step1"></div>
<div class="loadbar">
<img class="imgloadbar" src="loadbar.gif">
</div>
<div class="txt" id="step2"></div>
<div class="desript">
<div class="s1" id="step3"></div>
<div class="s2" id="step4"></div>
</div>
<div class="btnwrap">
<a href="clickurl">
<div class="bluebtn">OK</div>
</a>
</div>
</div>
</center>
</div>
<script type="text/javascript" src="translation.js"></script>
</body>
</html>


(this is actually the correct way in Python, but old habits die hard).


Nice, it worked perectly.
Thank you @twinaxe
@twinaxe you are a saint! Works great!
