Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
datetime_obj.minute, datetime_obj.second,
datetime_obj.microsecond, datetime_obj.tzinfo)
else:
return jdatetime.datetime.fromgregorian(
datetime=datetime_obj)
except ValueError:
raise exceptions.ValidationError(
self.error_messages['invalid'])
if isinstance(datetime_obj, datetime.date):
try:
if datetime_obj.year < 1700:
return jdatetime.datetime(datetime_obj.year,
datetime_obj.month,
datetime_obj.day)
else:
return jdatetime.datetime.fromgregorian(date=datetime_obj)
except ValueError:
raise exceptions.ValidationError(
self.error_messages['invalid'])
# Attempt to parse a datetime:
datetime_obj = smart_str(datetime_obj)
if not datetime_obj:
return None
# split usecs, because they are not recognized by strptime.
if '.' in datetime_obj:
try:
datetime_obj, usecs = datetime_obj.split('.')
if '+' in usecs:
usecs, tz = usecs.split('+')
usecs = int(usecs)
except ValueError:
def parse_date(self, datetime_obj):
"Take a datetime object and convert it to jalali date"
if isinstance(datetime_obj, datetime.datetime):
try:
if datetime_obj.year < 1700:
return jdatetime.datetime(
datetime_obj.year, datetime_obj.month,
datetime_obj.day, datetime_obj.hour,
datetime_obj.minute, datetime_obj.second,
datetime_obj.microsecond, datetime_obj.tzinfo)
else:
return jdatetime.datetime.fromgregorian(
datetime=datetime_obj)
except ValueError:
raise exceptions.ValidationError(
self.error_messages['invalid'])
if isinstance(datetime_obj, datetime.date):
try:
if datetime_obj.year < 1700:
return jdatetime.datetime(datetime_obj.year,
datetime_obj.month,
datetime_obj.day)
else:
return jdatetime.datetime.fromgregorian(date=datetime_obj)
except ValueError:
raise exceptions.ValidationError(
self.error_messages['invalid'])
def datetime2jalali(g_date):
if g_date is None:
return None
g_date = to_current_timezone(g_date)
return jdatetime.datetime.fromgregorian(datetime=g_date)
def send(self):
filename = datetime.datetime.today().strftime('%Y-%m-%d-%H:%m')
image = (path.join(self.d, 'tmp/' + filename + '.png'))
img = self.tweet_cloud.to_image()
img.save(image)
# img.show()
self.file_names.append(path.join(self.d, 'tmp/' + filename + '.png'))
media_ids = []
for file in self.file_names:
res = api.media_upload(file)
media_ids.append(res.media_id)
status_text = "ابر کلمات {} ساعت گذشته \n در تاریخ {} \n از {} توییت".format(
int(self.from_time),
jdatetime.datetime.fromgregorian(datetime=datetime.datetime.now()).strftime(
'%H:%m - %m/%d'),
self.all_tweets_count,
)
api.update_status(status=status_text, media_ids=media_ids)