【发布时间】:2021-08-11 21:41:44
【问题描述】:
我的目的是编写一个程序,它可以登录 Instagram,然后使用某个链接为图片点赞。最后,它应该制作一个屏幕截图。主要问题是,如果程序第二次获得链接,我的浏览器会退出 Instagram,所以我无法在照片上获得点赞。我一直在寻找任何决定,但我一无所获。请帮忙!这是我的代码。
import time
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
driver = webdriver.Chrome('chromedriver.exe')
driver.get('https://www.instagram.com')
def log_in(un, pw):
username = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[name='username']")))
username.clear()
for i in un:
time.sleep(0.01)
username.send_keys(i)
password = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[name='password']")))
password.clear()
for i in pw:
time.sleep(0.01)
password.send_keys(i)
login_button = WebDriverWait(driver, 2).until(
EC.element_to_be_clickable((By.CSS_SELECTOR, "button[type='submit']"))).click()
driver.get('https://www.instagram.com/p/CSXFbIKjKxO/?utm_source=ig_web_copy_link')
driver.find_elements_by_link_text('Like').click()
filename = un + '.png'
driver.save_screenshot(filename)
log_in('login', 'password')
driver.close()
【问题讨论】:
标签: python selenium selenium-webdriver web-scraping instagram