Ewan-Ahiouy 发表于 2023-8-17 20:55:43

python长截图

本帖最后由 Ewan-Ahiouy 于 2023-8-17 21:02 编辑

python实现长截图的详细方法

isdkz 发表于 2023-8-17 20:57:27

要实现长截图,可以使用Python的selenium库来自动化浏览器操作。以下是实现长截图的详细步骤:

1. 首先,确保已经安装了selenium库。可以使用以下命令来安装:
      pip install selenium
   

2. 导入selenium库和相关的模块:
      from selenium import webdriver
   from selenium.webdriver.common.by import By
   from selenium.webdriver.support.ui import WebDriverWait
   from selenium.webdriver.support import expected_conditions as EC
   

3. 创建一个浏览器实例:
      driver = webdriver.Chrome()
   

4. 打开需要截图的网页:
      driver.get("https://example.com")
   

5. 使用selenium的等待机制,确保页面完全加载:
      wait = WebDriverWait(driver, 10)
   wait.until(EC.presence_of_element_located((By.TAG_NAME, "body")))
   

6. 获取页面的高度:
      scroll_height = driver.execute_script("return document.body.scrollHeight")
   

7. 设置浏览器窗口的大小,以便能够完整显示整个页面:
      driver.set_window_size(1920, scroll_height)
   

8. 滚动页面到底部,以便加载所有内容:
      driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
   

9. 等待一段时间,确保页面加载完全:
      import time
   time.sleep(2)
   

10. 将页面内容保存为截图:
        driver.save_screenshot("screenshot.png")
   

11. 关闭浏览器实例:
        driver.quit()
   

通过以上步骤,你可以使用Python的selenium库实现长截图功能。请注意,你需要根据实际情况调整窗口大小和等待时间,以确保页面加载完全。

Ewan-Ahiouy 发表于 2023-8-17 21:00:28

脚本nb!{:10_257:}

小甲鱼 发表于 2023-8-17 21:25:33

实现思路应该是:截图 + 识别重复 + 拼接。

Ewan-Ahiouy 发表于 2023-8-17 21:26:56

小甲鱼 发表于 2023-8-17 21:25
实现思路应该是:截图 + 识别重复 + 拼接。

{:10_282:}

Mike_python小 发表于 2023-8-23 19:49:03

小甲鱼 发表于 2023-8-17 18:25
实现思路应该是:截图 + 识别重复 + 拼接。

测,截图的完成了,识别重复有点太
页: [1]
查看完整版本: python长截图