ohld / igbot

🐙 Free scripts, bots and Python API wrapper. Get free followers with our auto like, auto follow and other scripts!
https://hikerapi.com/p/N2P6iqiM
Apache License 2.0
4.69k stars 1.47k forks source link

Filtering business accounts not working correctly and cannot be turned off. #687

Closed TiasTias closed 5 years ago

TiasTias commented 5 years ago

Please follow the guide below


Before submitting an issue, make sure you have:

Purpose of your issue?


The following sections requests more details for particular types of issues, you can remove any section (the contents between the triple ---) not applicable to your issue.


For a bug report, you must include the Python version used, code that will reproduce the error, and the error log/traceback.

Paste the output of python -V here: Python 2.7.10

Code:

I am running the ultimate_scheduler.

def like_and_follow_last_user_media_likers():
    x = randint(100, 200)
    # Select one username from username_database
    #for username in random_user_file.random():
    username = random_user_file.random()
    bot.logger.info("Going to like and follow recent post likers of {}.".format(username))
    medias = bot.get_user_medias(username, filtration=False)
    if len(medias):
        likers = bot.get_media_likers(medias[0])
        likers = likers[::-1]
        likers = likers[:x]
        for liker in tqdm(likers):
            bot.like_user(liker, amount=2)
            bot.follow(liker)

Describe your issue

How does the bot filter out businesses? I believe it is incorrectly filtering out accounts that " is BUSINESS" but when I look at their profile they are not. I tried to turn this filtering off in the bot.py file line 72 filter_business_accounts=False but this makes no difference!

If you take this example "govardstern" is skipped because "is BUSINESS"

screen shot 2018-10-18 at 14 27 47

... but it IS NOT a business profile and I have set filter_business_accounts=False

screen shot 2018-10-18 at 14 29 17

Olcaey commented 5 years ago

Hi @TiasTias, both in API and instagram website source code, this account seems as business account. Therefore, it is filtered out. I don't know why this user does not have business account signals like other profiles, but it seems like it actually is a business account.

for the 2nd run with filter_business_accounts = False, you should either re-start the bot or set this filter with bot.filter_business_accounts = False to make sure it has changed. Because from the log information in the image you shared, business filter seems as still on.

Hope these help, let us know.

TiasTias commented 5 years ago

Hope these help, let us know.

Thanks for the reply! Naturally I tried re-starting the box but this didn't do anything. I think I am having wider issues because I also noticed when I updated the values for max_likes_to_like for instance it still didn't take this into affect. Where do I set this filter to this filter with bot.filter_business_accounts = False ? Simply where it is an adding "bot." before?!

Is there anyway I can do a fresh reinstall of the bot. I re-downlaoded the repo fresh but the errors still persisted. Everything was working well up until a few days ago.

Now I also get the issue that apparently after filtering medias it only gets 1 or 0 where as before this was not happening.

47145603-62f12e00-d2ca-11e8-9061-5a9789f1321d
Olcaey commented 5 years ago

You set parameters like filter_business_accounts either at the start or later within the functions. However, in the start use bot = Bot(filter_business_accounts=True). Then, since all these parameters are assigned to bot, you need to use bot.filter_business_accounts to view or change these parameters. Original bot parameters can be found in bot.py inside: class Bot(object): def init(self, parameter1, parameter2, ...)

For the filter, check your max/min like, black hashtag etc. limitations. If medias are filtered by those, you do not get any media to proceed.

TiasTias commented 5 years ago

It is clear these parameters are not being recognised as being updated though. Since I also updated...

max_followers_to_follow=9000, min_followers_to_follow=100, max_following_to_follow=5000, min_following_to_follow=100, max_followers_to_following_ratio=99, max_following_to_followers_ratio=99, ...I stopped the bot using ctrl c and restarted it again using python ultimate_schedule.py but still it filters out accounts because of the ratio or the follower account which should not actually happen with the current settings.

TiasTias commented 5 years ago

BUMP

Warmooo commented 5 years ago

@TiasTias I had the same problem but seem to have resolved the issue for me, so perhaps you could try the following:

  1. Depending on what operating system you are using, you'll need to find your way to your Library folder, in which should be a folder called Python (the folder name might also have your version number, e.g. python2.7).

  2. Within this folder see if you can find your way to a folder called instabot, for me it's inside the site-packages folder on MacOS, but it could be different on Windows operating system. Just snoop around or use a search bar if you have one.

  3. Now if you can find that folder, it should seem quite familiar. Find your way to the bot folder within it and then to bot.py. If you edit that to show filter_business_accounts=False, save it, and then run the script normally as you did before, it should work.

Hope this works for you.

stale[bot] commented 5 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.