def get_web_screenshot(web_info):
logger.info('Getting zapper web screenshot and uploading......\n')
display = Display(visible=0)
display.start()
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--no-sandbox')
browser = webdriver.Chrome(executable_path=settings.CHROME_DRIVER_PATH, chrome_options=chrome_options)
browser.set_window_size(web_info['width'], web_info['height'])
browser.implicitly_wait(10)
browser.get(web_info['url'])
sleep(1)
img_base64 = browser.get_screenshot_as_base64()
browser.close()
display.stop()
# upload to imgur.com
response = requests.request(
"POST", url=IMGUR_API_URL, data=img_base64,
headers={'authorization': 'Client-ID {client_id}'.format(client_id=settings.IMGUR_CLIENT_ID)}
)
response_json = response.json()
if response.status_code == 200:
return response_json['data']['link']
else:
logger.warning(
('ImgurApiError\n'
'Status Code: %s\n'
'Error Message: %s\n'),
response.status_code, response_json['data']['error']
)
return False
评论列表
文章目录