I tried
WebDriverWait(browser, 30).until(EC.visibility_of_element_located((By.CLASS_NAME, "upload-file dropzone"))).send_keys(r"C:\Users\Dln\Desktop\wide.jpg")
but I got nothing uploaded, it is clickable and it opens a window to choose the image from my system, I tried to use keyboard.type(path) after clicking the upload image button but it is not that efficient, so I was wondering about other methods.
here's the code for the button
<div class="fileinput-button">
<div class="file-input">
<div class="kv-upload-progress kv-hidden" style="display: none;"><div class="progress">
<div class="progress-bar bg-success progress-bar-success progress-bar-striped active" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width:0%;">
0%
</div>
</div></div>
<div class="clearfix"></div>
<button type="button" tabindex="500" title="Abort ongoing upload" class="btn btn-default btn-secondary kv-hidden fileinput-cancel fileinput-cancel-button legitRipple"><i class="glyphicon glyphicon-ban-circle"></i> <span class="hidden-xs">Cancel</span></button>
<div tabindex="500" class="btn btn-link btn-sm text-default font-weight-semibold btn-file legitRipple"><i class="icon-upload4 mr-2"></i> <span class="hidden-xs">Upload images</span><input type="file" name="file" id="upload-file-wysiwyg-btn" class="file-input file-input-custom form-control form-control-sm alpha-grey" multiple="multiple" data-browse-icon="<i class='icon-upload4 mr-2'></i>" data-browse-label="Upload images" data-show-caption="false" data-show-upload="false" data-browse-class="btn btn-link btn-sm text-default font-weight-semibold" data-remove-class="btn btn-light btn-sm" data-show-remove="false" data-show-preview="false" data-fouc=""></div>
</div>
</div>