Este es el código que hice para dar me gusta a los tweets.
Estoy tratando de hacer que el código le guste a los tweets, pero necesito un tiempo de espera establecido para que no me prohíban mientras uso
for (let i = 0; i < 5; i++) for(var j = 1; j < 9; j++) { for (const d of document.querySelectorAll('div[data-testid="like"]')) { d.scrollIntoView(true); d.click() }};Estoy tratando de hacer un tiempo de espera, pero no sé cómo
He intentado hacerlo así pero no funcionó
for (let i = 0; i < 5; i++) for(var j = 1; j < 9; j++) { for (const d of document.querySelectorAll('div[data-testid="like"]')) { d.scrollIntoView(true); await sleep({ seconds: 1 }); d.click() }}; const sleep = ({ seconds }) => new Promise((proceed) => { console.log(`WAITING FOR ${seconds} SECONDS...`); setTimeout(proceed, seconds * 1); });No hagas esto en un bucle.
Por tus comentarios parece que quieres un bookmarklet
javascript:(function() { const likes = document.querySelectorAll('div[data-testid=like]'); let cnt = 0; const clickLike = () => { if (cnt >= likes.length) return; const like = likes[cnt]; like.scrollIntoView(true); like.click(); cnt++; setTimeout(clickLike, 1000); }; clickLike(); })()ejemplo en una pagina
window.addEventListener("DOMContentLoaded", () => { // page is ready const likes = document.querySelectorAll('div[data-testid=like]'); let cnt = 0; const clickLike = () => { if (cnt >= likes.length) return; // stop const like = likes[cnt]; like.classList.add("clicked"); // for show like.scrollIntoView({behavior: "smooth"}); like.click(); cnt++; setTimeout(clickLike, 1000); // wait a second }; clickLike(); // start }); div[data-testid=like] { height: 100px } div[data-testid=like].clicked { border: 1px solid green; } <div data-testid="like">Like 1</div> <div data-testid="like">Like 2</div> <div data-testid="like">Like 3</div> <div data-testid="like">Like 4</div> <div data-testid="like">Like 5</div>