From c7117abc349344f15d95d3fe50e388f8df7e82f4 Mon Sep 17 00:00:00 2001 From: Tykayn Date: Tue, 26 Mar 2024 15:43:18 +0100 Subject: [PATCH] update mapillary taker --- mapillary_sequences_userscript/index.js | 44 ++++++++++++++++++++---- mapillary_sequences_userscript/readme.md | 2 +- 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/mapillary_sequences_userscript/index.js b/mapillary_sequences_userscript/index.js index 14be4c8b..9230c12b 100644 --- a/mapillary_sequences_userscript/index.js +++ b/mapillary_sequences_userscript/index.js @@ -5,11 +5,12 @@ // ouvrir le drawer de séquene key function toggle_advanced_info () { - let _dots = document.querySelector('.three-dots') + let _dots = document.querySelector('.i2.three-dots') _dots.click } sequences_list = [] +missing_sequences = [] function filter_sequences_id () { @@ -34,33 +35,62 @@ function add_sequence_id () { let id_sequence_container = document.querySelector('.content > div:nth-child(1) > div:nth-child(2) > app-copy-field:nth-child(2) > div:nth-child(1) > div:nth-child(1)') id = id_sequence_container.innerText sequences_list.push(id) + console.log('sequence id', id) } -function iterate_blocks (initial_block = 4, max_block = 6, waiting = 300) { +function check_annoying_modal(){ + has_annoying_modal = document.querySelector('#close_dialog_box') + if (has_annoying_modal) { + + has_annoying_modal.click() + toggle_advanced_info() + + } +} + +function iterate_blocks (initial_block = 0, max_block, waiting = 400) { // compter les blocs let listing_blocs = document.querySelectorAll('drawer-sequence-item') console.log('listing_blocs', listing_blocs.length) + if(!max_block){ + listing_blocs.length +1 + } // sequences_list = [] let ii = 1 * initial_block let jj = 1 * initial_block + check_annoying_modal() listing_blocs.forEach((elem) => { + if (ii <= max_block) { - setTimeout(() => { + check_annoying_modal() + console.log('set timeout', (ii * waiting - 1 * initial_block * waiting)) + let t = setTimeout(() => { + + check_annoying_modal() + jj++ click_block_number(jj) add_sequence_id() - }, ii * waiting) + clearTimeout(t) + }, (ii * waiting - 1 * initial_block * waiting)) ii++ } + }) - filter_sequences_id() + + if (ii === max_block) { + filter_sequences_id() + } + } // toggle_advanced_info() -// le premier bloc qui permet de cliquer sur une séquence est le 5e à partir de zéro // on définit un max d'itérations à 20 pour tester, et 300 milisecondes entre chaque -iterate_blocks(20, 25, 300) +iterate_blocks(0, 25, 600) + +// compter +document.querySelectorAll('drawer-sequence-item') diff --git a/mapillary_sequences_userscript/readme.md b/mapillary_sequences_userscript/readme.md index a14e7baf..2efdfc0f 100644 --- a/mapillary_sequences_userscript/readme.md +++ b/mapillary_sequences_userscript/readme.md @@ -11,4 +11,4 @@ Vous pouvez le recopier avec un clic dans la console de votre navigateur. J'utilise ensuite un script qui lit un fichier texte contenant un tableau python listant des strings d'identifiants de séquences pour générer un script bash qui lance une commande par séquence pour télécharger toutes les images de la séquence en renommant les fichiers et en ajoutant les infos exif: le mapillary_download de stefmani pour lancer le téléchargement de chaque séquence à la suite. https://github.com/Stefal/mapillary_download - +[index.js](index.js)[index.js](index.js)