fix download

pull/16/head
Shrimadhav U K 2018-08-06 18:48:23 +05:30
parent c15508885a
commit fba3894f85
1 changed files with 28 additions and 6 deletions

View File

@ -5,18 +5,40 @@
from telethon import events
import os
import requests
from datetime import datetime
@borg.on(events.NewMessage(pattern=r".download", outgoing=True))
current_date_time = "./DOWNLOADS/"
@borg.on(events.NewMessage(pattern=r".download (.*)", outgoing=True))
async def _(event):
if event.fwd_from:
return
current_date_time = "./DOWNLOADS/"
input_str = event.pattern_match.group(1)
if not os.path.isdir(current_date_time):
os.makedirs(current_date_time)
if event.reply_to_msg_id:
message_id = event.reply_to_msg_id
required_message = await borg.get_messages(event.chat_id, limit=1, max_id=message_id+1, min_id=message_id-1)
downloaded_file_name = await borg.download_media(required_message, current_date_time)
await event.edit("Downloaded to {}.".format(downloaded_file_name))
start = datetime.now()
downloaded_file_name = await borg.download_media(await event.get_reply_message(), current_date_time)
end = datetime.now()
ms = (end - start).seconds
await event.edit("Downloaded to {} in {} seconds.".format(downloaded_file_name, ms))
elif input_str:
url, file_name = input_str.split("|")
r = requests.get(url, stream=True)
await event.edit("Processing ...")
required_file_name = current_date_time + "" + file_name
start = datetime.now()
with open(required_file_name, "wb") as fd:
for chunk in r.iter_content(chunk_size=128):
fd.write(chunk)
end = datetime.now()
ms = (end - start).seconds
await event.edit("Downloaded to {} in {} seconds.".format(required_file_name, ms))
else:
await event.edit("Reply to a message to download to my local server.")
@borg.on(events.NewMessage(pattern=r".upload (.*)", outgoing=True))
async def _(event):
if event.fwd_from:
return