# -*- coding: utf-8 -*-
import telebot
import os
from validator_collection import validators, checkers
from selenium import webdriver
token = 'tokn'
bot = telebot.TeleBot(token, threaded = False)
options = webdriver.ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument("--test-type")
options.binary_location = "/usr/bin/chromium"
driver = webdriver.Chrome(chrome_options=options)
@bot.message_handler(commands=['start'])
def hello_user(message):
bot.send_message(
message.chat.id, 'Hello, ' + message.from_user.username + "!")
@bot.message_handler(commands=['help'])
def show_help(message):
bot.send_message(
message.chat.id, 'To get screenshot of webpage use command /getpng.\nExample: /getpng
https://www.google.com')
#получение скрина сайта с помощью selenium и headless chrome
@bot.message_handler(commands=['getpng'])
def get_screenshot(message):
uid =
message.chat.id url = ""
try:
url = message.text.split(' ')[1]
except IndexError:
bot.send_message(uid, 'You have not entered URL!')
return
if not checkers.is_url(url):
bot.send_message(uid, 'URL is invalid!')
else:
driver = webdriver.Chrome(chrome_options=options)
driver.get(url)
photo_path = str(uid) + '.png'
driver.set_window_size(1280, 720)
driver.save_screenshot(photo_path)
bot.send_photo(uid, photo = open(photo_path, 'rb'))
driver.quit()
os.remove(photo_path)
if
name == '
main':
bot.infinity_polling()
Pochemu ne rabotaet?