This code brings back an error of

Uncaught TypeError: Cannot read property 'innerHTML' of null
    at doLike (<anonymous>:20:21)
    at <anonymous>:35:1
doLike @ VM1269:20
(anonymous) @ VM1269:35

It has worked in the past, I got it from this website : https://blog.joeldare.com/simple-instagram-like-bot/

    function getHeartElement() {
    var knownHeartElementNames = ["coreSpriteHeartOpen", "coreSpriteLikeHeartOpen"];
    var i = 0;
    // Loop through the known heart elements until one works
    for (i = 0; i < knownHeartElementNames.length; i++) {
        var heartElement = document.querySelector("." + knownHeartElementNames[i]);
        if (heartElement != undefined) {
            break;
        }
    }
    return heartElement;
}

function doLike() {
    var likeMax = 100;
    var likeElement = getHeartElement();
    var nextElement = document.querySelector(".coreSpriteRightPaginationArrow");
    likeCount++;
    var nextTime = Math.random() * (14000 - 4000) + 4000;
    if (likeElement.innerHTML.match("Unlike") == null) {
        likeElement.click();
        console.log(likeCount + " - liked");
    } else {
        console.log(likeCount + " - skipped");
    }
    setTimeout(function() {nextElement.click();}, 1000);
    if (likeCount < likeMax) {
        setTimeout(doLike, nextTime);
    } else {
        console.log("Nice! Time for a break.");
    }
}

var likeCount = 0;
doLike();

0 Answers