在selenium中上传图片以进行python(不加载)

时间:2017-02-15 17:16:22

标签: python-2.7 selenium

我正在尝试使用Selenium for python 2.7在网站上传图片。

图片确实在网站上显示,但显然没有加载。一张图片胜过1000字。

Not loading image

正如您所看到的,图片已经加载了#39;''但不会出现在网站上。此外,即使我在发送整个表单前等待10秒,广告仍然会在没有任何图片的情况下发布。这是我使用

的代码
image_input = browser.find_element_by_id('FileUploadInput')
browser.execute_script("arguments[0].type = 'file';", image_input)
image_input.send_keys("picture1.jpg")

此外,这是我试图上传到的网站的代码。

                <li class="jsonly">

            <div id="ImageUpload" class="clearfix form-section placeholders">

                <p class="images-title">Ajoutez au moins une photo. Mettez-en davantage pour montrer différents angles et détails.</p>

                <ol id="UploadedImages">
                    </ol>

                <span class="field-message" data-for="FileUploadInput"></span>

                <div id="ImageDragAndDrop" class="clearfix">
                    <div class="image"></div>
                    <div class="copy">
                        <h3>Glisser-déposer</h3>
                        <p>Glissez et déposez vos photos pour en modifier l'ordre d'affichage.</p>
                    </div>
                </div>

                <div id="FileInputWrapper" class="file-input-wrapper">
                    <input type="hidden" name="file" id="FileUploadInput" >

                    <h3>Recevez au moins deux fois plus de réponses en ajoutant des photos</h3>
                    <p>Vous pouvez ajouter jusqu&rsquo;à <span id="MaxImages">10</span> photos, d&rsquo;au moins 300px de haut ou de large (nous recommendons au moins 1000px).</p>

                    <div class="imageUploadButtonWrapper">
                        <button id="ImageUploadButton" type="button" class="button-update-cancel short file-upload-button">
                            Sélectionner les photos</button>
                    </div>

如您所见,我定位FileUploadInput,取消隐藏,然后发送密钥。

网站链接:我在下面发布的代码示例中

这是我使用的代码,因此您无需自行编码(包含用户名和密码,以便您更轻松,无论如何都是虚拟帐户) )  My code

非常感谢!

1 个答案:

答案 0 :(得分:0)

您正在尝试处理错误的input字段。请尝试以下代码:

image_input = browser.find_element_by_xpath('//input[@type="file" and @multiple]')
image_input.send_keys("picture1.jpg")