| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- import os
- import shutil
- from selenium import webdriver
- import time
- import threading
- import random
- frameIndex = 0
- iswork = 0
- threadNum = 0
- # def road_situation():
- # try:
- # # 每隔90秒截屏一次
- # t = threading.Timer(1, road_situation)
- # t.start()
- # # 初始化一个谷歌浏览器实例
- # driver = webdriver.Chrome()
- # driver.maximize_window()
- # picture_url = "http://localdata/test.html"
- # driver.get(picture_url)
- # # driver.refresh()
- # driver.get_screenshot_as_file(r"pic\%s.png" %time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time())))
- # print(os.getcwd())
- # driver.quit()
- # except BaseException as msg:
- # print("[err] %s" % msg)
- def save_screenshot():
- global frameIndex, iswork, threadNum
- try:
- if iswork == 0:
- return
- threadNum += 1
- t = threading.Timer(0.02, save_screenshot)
- t.start()
- # rowNum = int(driver.find_element_by_id("rowNum").get_attribute('value'))
- # rsCount = int(driver.find_element_by_id("rsCount").get_attribute('value'))
- endFlag = int(driver.find_element_by_id("endFlag").get_attribute('value'))
- print("[%s] %d" % (time.strftime('%H:%M:%S', time.localtime(time.time())), frameIndex))
- # print("[%s][%d] %d / %d" % (time.strftime('%H:%M:%S', time.localtime(time.time())), frameIndex, rowNum, rsCount))
- # if rowNum <= rsCount:
- if endFlag == 0:
- # t = threading.Timer(0.04, save_screenshot)
- # t.start()
- # if rowNum > 0:
- frameIndex += 1
- # file = r"pic\%s.png" % time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time()))
- # file = r"pic\%s.png" % rowNum
- file = r"pic\%s.png" % (frameIndex)
- # file = r"pic\%s_%d.png" % (frameIndex, rowNum)
- driver.get_screenshot_as_file(file)
- # png_data = driver.get_screenshot_as_png() # 获取二进制数据流
- # print(os.getcwd())
- print(file)
- # if rowNum == rsCount:
- # print("save_screenshot finished !")
- # driver.quit()
-
- threadNum -= 1
- else:
- print("save_screenshot finished !!")
- threadNum -= 1
- iswork = 0
- if iswork == 0 and threadNum <= 0:
- driver.close()
- driver.quit()
- except BaseException as msg:
- print("[err] %s" % msg)
- threadNum -= 1
- iswork = 0
- if iswork == 0 and threadNum <= 0:
- driver.close()
- driver.quit()
- try:
- driver = webdriver.Chrome(r"chromedriver.exe")
- picture_url = "http://localdata/test.html"
- driver.maximize_window()
- driver.get(picture_url)
- # driver.refresh()
- # print(dir(driver))
- # time.sleep(1)
- iswork = 1
- save_screenshot()
- # driver.get_screenshot_as_file('1.png')
- # print("%s: Screenshot save success!!" % picture_url)
- # driver.close()
- # driver.quit()
- except BaseException as msg:
- print("[err] %s" % msg)
- driver.close()
- driver.quit()
|