#! /usr/bin/env python import os import subprocess captures = [ ('https://cournonterral.test-eservices.montpellier3m.fr/', 'cournonterral.png'), ('https://fabregues.eservices.montpellier3m.fr/', 'fabregues.png'), ('https://marcoussis.au-quotidien.com/etat-civil/copie-d-acte-de-naissance/', 'marcoussis.png'), ('https://meyzieu.au-quotidien.com/inscriptions/ramassage-des-accueils-de-loisirs-du-mercredi-inscription-mensuelle-1/', 'meyzieu.png'), ('https://eservices.montpellier3m.fr/', 'montpellier.png'), ('https://sussargues.test-eservices.montpellier3m.fr/', 'sussargues.png'), ('https://vendargues.test-eservices.montpellier3m.fr/', 'vendargues.png'), ('https://demarches.vincennes.fr/question/votre-question-jeunesse/', 'vincennes.png'), ('https://perols.eservices.montpellier3m.fr/', 'perols.png'), ('https://espace-usager-alfortville.test.entrouvert.org/', 'alfortville.png'), ('https://citoyen-fondettes.test.entrouvert.org/', 'fondettes.png'), ('https://mesdemarches.fontenay-sous-bois.fr/', 'fontenay-sous-bois.png'), ('https://www.mytournai.be/', 'tournai.png'), ('https://citoyen.chateauroux-metropole.fr/', 'chateauroux.png'), ('https://nancy.test.entrouvert.org/', 'nancy.png'), ('https://la-seyne.sictiam.dev.entrouvert.org/', 'la-seyne-sur-mer.png'), ] svg_src = open('screen-with-capture.svg').read() for url, filename in captures: print url print 'creating capture' subprocess.call(['phantomjs', '--ssl-protocol=any', '--ignore-ssl-errors=yes', 'capture.js', url, 'captures/%s' % filename]) print 'putting it in a mini screen' svg_dst = svg_src.replace('xxx.png', 'captures/%s' % filename) svg_path = open('/tmp/.xxx.svg', 'w') svg_path.write(svg_dst) svg_path.close() subprocess.call(['inkscape', '--without-gui', '--file', '/tmp/.xxx.svg', '--export-area-drawing', '--export-area-snap', '--export-png', 'screen-%s' % filename, '--export-width', '250']) filenames = [x[1] for x in captures] # gm montage screen-*.png -geometry +10+0 -tile 8x1 -background none ../screens.png # +10+0 <- 10 is the margin # 8x1 <- 8 is the number of images print 'assembling mini screens' subprocess.call(['gm', 'montage'] + ['screen-%s' % x for x in filenames] + ['-geometry', '+10+0', '-tile', '%sx1' % len(captures), '-background', 'none', '../../screens.png'])