1

我尝试制作一个可以抓取 Instagram 的脚本。

目前我只是打开并使用我的脚本登录到 insta。

我想截屏,但是当他必须截取脚本并且我的文件夹中没有 JPG 图像时,我的脚本关闭了

这是我的代码:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.keys import Keys
import time 

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
dt = driver.get("https://www.instagram.com")
content = driver.find_element_by_css_selector('body > div.RnEpo.Yx5HN._4Yzd2 > div > div > button.aOOlW.bIiDR')
content.click()
time.sleep(10)
element_username = driver.find_element_by_name("username")
element_username.send_keys("mail")
time.sleep(5)
element_password = driver.find_element_by_name("password")
element_password.send_keys("password")
time.sleep(5)
element_clique = driver.find_element_by_css_selector('#loginForm > div.qF0y9.Igw0E.IwRSH.eGOV_._4EzTm.kEKum > div:nth-child(3) > button > div')
element_clique.click()
time.sleep(5)
element_clique_bt1 = driver.find_element_by_css_selector('#react-root > section > main > div > div > div > div > button')
element_clique_bt1.click()
time.sleep(15)
element_clique_bt2 = driver.find_element_by_css_selector('body > div.RnEpo.Yx5HN > div > div > div > div.mt3GC > button.aOOlW.HoLwm')
element_clique_bt2.click()
time.sleep(25)
element_clique_bt3 = driver.find_element_by_css_selector('.XTCLo')
element_clique_bt3.send_keys("#survivalism", Keys.ENTER)
element_clique_bt4 = driver.find_element_by_css_selector('#fcc4df1f5d15e > div > div')
element_clique_bt4.click()
driver.get_screenshot_as_file("LambdaTestVisibleScreen.png") 

time.sleep(50)

我的变量驱动程序有问题吗?

4

1 回答 1

1

get_screenshot_as_file(filename)将当前窗口的屏幕截图保存为 PNG 图像文件。False如果有IOError,否则返回True

但是,还建议在文件名中使用完整路径,而不是JPG文件,您必须查找PNG文件。因此,您的代码行将是:

driver.get_screenshot_as_file("/path/to/LambdaTestVisibleScreen.png") 

参考

您可以在以下位置找到一些相关的详细讨论:

于 2022-02-03T21:46:11.853 回答