Бот в Instagram: как сделать так, чтобы бот не отличался от уже понравившихся фотографий? - PullRequest
1 голос
/ 26 мая 2020

Я пытаюсь создать инстаграм-бота, который может следить за профилями, ставить лайки и комментировать сообщения. Соответствующая часть кода, которая управляет процессом «лайк», приведена ниже. Это работает, но если открытая фотография уже понравилась, бот снова нажимает на нее, фактически снимая лайк. Как мне предотвратить это?

try:
    button_like = webdriver.find_element_by_xpath('html/body/div[4]/div[2]/div/article/div[2]/section[1]/span[1]/button')                  
    button_like.click()
    likes += 1
    sleep(randint(18,25))
except Exception:
    print("An error occurred when trying to like images")

XPATH одинаков для кнопки «Нравится», независимо от того, понравилась она уже или нет.

1 Ответ

1 голос
/ 26 мая 2020

Вы можете проверить, понравилось ли изображение уже или нет, проверив значение атрибута метки области по мере его изменения с Like :

<svg aria-label="Like" class="_8-yf5 " fill="#262626" height="24" viewBox="0 0 48 48" width="24">

К В отличие от :

<svg aria-label="Unlike" class="_8-yf5 " fill="#ed4956" height="24" viewBox="0 0 48 48" width="24">

, чтобы вы могли проверить, нравится ли изображение уже или нет, проверив значение атрибута перед нажатием.

...