Instapy: Follow by likers not working

Created on 22 Nov 2018  路  14Comments  路  Source: timgrossmann/InstaPy


Expected Behavior

Follow by likers

Current Behavior

Get the message "video has no likes" for every user.
Everything was working fine two days ago

Possible Solution (optional)

InstaPy configuration

Most helpful comment

video message is misleading. the xpath for the button changed. in commenter_util, you just have to add another /div to the path (2 lines)

def likers_from_photo(browser, amount=20):

user_liked_list = []
try:
    liked_this = browser.find_elements_by_xpath("//div/article/div[2]/section[2]/div/div/a")
    likers = []
    for liker in liked_this:
        if "like this" not in liker.text:
            likers.append(liker.text)        
    if check_exists_by_xpath(browser, "//div/article/div[2]/section[2]/div/div/a"):

All 14 comments

This is due to Instagram changing the design so the script cannot see which users have liked a video. A solution would be to skip video media.

Thanks for the quick response. I just thought it was odd to see every single username giving the same video error. The thing is that those were supposed to be photos.

I have the same issue as well

Thanks for the quick response. I just thought it was odd to see every single username giving the same video error. The thing is that those were supposed to be photos.

Yeah it can happen if the first photo, or any photo for that matter is a video within the first 12, and one that is randomly picked. A fix has yet to be pushed for it.

video message is misleading. the xpath for the button changed. in commenter_util, you just have to add another /div to the path (2 lines)

def likers_from_photo(browser, amount=20):

user_liked_list = []
try:
    liked_this = browser.find_elements_by_xpath("//div/article/div[2]/section[2]/div/div/a")
    likers = []
    for liker in liked_this:
        if "like this" not in liker.text:
            likers.append(liker.text)        
    if check_exists_by_xpath(browser, "//div/article/div[2]/section[2]/div/div/a"):

video message is misleading. the xpath for the button changed. in commenter_util, you just have to add another /div to the path (2 lines)

def likers_from_photo(browser, amount=20):

user_liked_list = []
try:
    liked_this = browser.find_elements_by_xpath("//div/article/div[2]/section[2]/div/div/a")
    likers = []
    for liker in liked_this:
        if "like this" not in liker.text:
            likers.append(liker.text)        
    if check_exists_by_xpath(browser, "//div/article/div[2]/section[2]/div/div/a"):

Thanks hw, it works for me.

following you guys .

@hw711 Modified those lines and magically worked, thanks.

I had same problem 1 day ago. Today, I have reinstalled InstaPy and "Follow by likers" works again

Looks like it was fixed here
https://github.com/timgrossmann/InstaPy/commit/ad05cef3b5f412d68d6da915858f7a969241955b

I'm still seeing an issue with finding likers though, the code that clicks the button to open up the modal with all of the likers expects it to be labeled "likes", if it instead says "liked by \ and \ others" it fails and just returns ["<account>", "<count> others"] as the likers

@pez5001 Could someone verify the fix provided by pez, please?

@pez5001 Could someone verify the fix provided by pez, please?

@timgrossmann Fixed now, the only scenario where that Message is shown now is if you鈥檙e trying to get likers from a video

Sent with GitHawk

Fixed, thanks

Was this page helpful?
0 / 5 - 0 ratings

Related issues

CodeMaster1 picture CodeMaster1  路  3Comments

Naramsim picture Naramsim  路  3Comments

rahulkapoor90 picture rahulkapoor90  路  3Comments

ghost picture ghost  路  3Comments

drcyber975 picture drcyber975  路  3Comments