|
|
|
import vk_api,os,random, datetime
|
|
|
|
from vk_api import VkUpload
|
|
|
|
from time import sleep
|
|
|
|
|
|
|
|
|
|
|
|
def has_image_extention(filename):
|
|
|
|
filename = filename.lower()
|
|
|
|
|
|
|
|
image_extentions = ["jpg","png","bmp","jpeg"]
|
|
|
|
for image_extention in image_extentions:
|
|
|
|
if image_extention in filename:
|
|
|
|
return True
|
|
|
|
|
|
|
|
return False
|
|
|
|
|
|
|
|
def sendImages(img_dir = ".", ID = 0, IS_GROUP_CHAT = False, TOKEN = ""):
|
|
|
|
vk = vk_api.VkApi(token = TOKEN).get_api()
|
|
|
|
|
|
|
|
files = os.listdir(img_dir)
|
|
|
|
counter = 1
|
|
|
|
for filename in files:
|
|
|
|
|
|
|
|
if has_image_extention(filename) == False:
|
|
|
|
# file is probably not an image, so skipping
|
|
|
|
continue
|
|
|
|
|
|
|
|
# full path to the image
|
|
|
|
path_to_image = img_dir + filename
|
|
|
|
|
|
|
|
# upload via API
|
|
|
|
upload = VkUpload(vk)
|
|
|
|
upload_img = upload.photo_messages(photos = path_to_image)[0]
|
|
|
|
|
|
|
|
# each message will contain "Counter : {number_of_}"
|
|
|
|
MESSAGE = "Counter : ┃{}┃ The next appr. at ~ ┃{}┃".format(counter,
|
|
|
|
datetime.datetime.now() + datetime.timedelta(seconds=4))
|
|
|
|
# sending
|
|
|
|
print("• {}: Sending {}...".format(counter,filename))
|
|
|
|
|
|
|
|
if IS_GROUP_CHAT == False:
|
|
|
|
try:
|
|
|
|
vk.messages.send(user_id = ID ,message=MESSAGE,
|
|
|
|
attachment = 'photo{}_{}'.format(upload_img['owner_id'],upload_img['id']),
|
|
|
|
random_id = 0)
|
|
|
|
except Exception as e:
|
|
|
|
print(e)
|
|
|
|
break
|
|
|
|
elif IS_GROUP_CHAT == True:
|
|
|
|
try:
|
|
|
|
vk.messages.send(chat_id = ID, message=MESSAGE,
|
|
|
|
attachment='photo{}_{}'.format(upload_img['owner_id'],upload_img['id']),
|
|
|
|
random_id = 0)
|
|
|
|
except Exception as e:
|
|
|
|
print(e)
|
|
|
|
break
|
|
|
|
|
|
|
|
counter += 1
|
|
|
|
|
|
|
|
# giving a bit of a rest to VK
|
|
|
|
sleep(random.uniform(3.0,4.0))
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
images = ''
|
|
|
|
token = ''
|
|
|
|
id = 0
|
|
|
|
|
|
|
|
sendImages(img_dir = images, ID = id, IS_GROUP_CHAT = False, TOKEN = token)
|
|
|
|
|
|
|
|
pass
|