利用Selenium实现Instagram机器人

代码比较简单,用python第三方模块Selenium实现即可,这里用的浏览器是Firefox, 可以根据情况选择Firefox或者Chrome.

from selenium import webdriver
import time


class InstagramBot:
    """
    Args:
    username: Instagram用户名
    password: Instagram 密码
    """
    def __init__(self, username, password):
        self.username = username
        self.password = password
        self.baseurl = 'https://www.instagram.com'

    def login(self):
        driver = webdriver.Firefox()
        driver.get('{}/accounts/login/'.format(self.baseurl))
        time.sleep(1)  #这里最好给一定的Sleep时间,等待浏览器加载页面完成,否则后续的元素定位会出现问题
        driver.find_element_by_xpath('/html/body/div[1]/section/main/div/div/div[1]/div/form/div/div[1]/div/label/input').send_keys(self.username)  #我这里直接用xpath进行定位,如果有问题,可以选择其他方式进行定位
        driver.find_element_by_xpath('/html/body/div[1]/section/main/div/div/div[1]/div/form/div/div[2]/div/label/input').send_keys(self.password)
        driver.find_element_by_xpath('/html/body/div[1]/section/main/div/div/div[1]/div/form/div/div[3]').click()

    #偷点懒,就不谢其他方法了

if __name__ == '__main__':
    bot = InstagramBot('XXXXXX', '**********************')
    bot.login()

posted @ 2022-03-21 10:36  Jason_huawen  阅读(125)  评论(0编辑  收藏  举报