[英]WebElement (Selenium/Python)
I'm trying to upload a image to https://www.alibaba.com/ through Selenium. 我正在尝试通过Selenium将图像上传到https://www.alibaba.com/ 。
So i find the element which allows me to do that: 所以我找到了允许我这样做的元素:
driver = webdriver.Chrome(r'C:\Users\migue\Desktop\WorkerBot\Drivers\chromedriver')
driver.maximize_window()
driver.get('https://www.alibaba.com/');
time.sleep(5)
#Open menu to upload image
wait = WebDriverWait(driver, 5)
x = True
while x:
x = False
try:
search_camara = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, 'i.ui-searchbar-imgsearch-icon')))
search_camara.click()
except:
x = True
driver.refresh()
time.sleep(5)
searcher1 = driver.find_element_by_xpath('//*[@id="J_SC_header"]/header/div[2]/div[2]/div/div/form/div[2]/div[3]/div[1]/div/div')
print(searcher1.get_attribute('innerHTML'))
When i print out searcher1 i get: 当我打印出searcher1时,我得到:
<div class="upload-btn-wrapper"><div class="upload-btn" style="z-index: 1;">Upload Image</div><div id="html5_1cu85jlnu116m14sle1omtch5s3_container" class="moxie-shim moxie-shim-html5" style="position: absolute; top: 14px; left: 183px; width: 109px; height: 28px; overflow: hidden; z-index: 0;"><input id="html5_1cu85jlnu116m14sle1omtch5s3" type="file" style="font-size: 999px; opacity: 0; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;" multiple="" accept="image/jpeg,image/png,image/bmp"></div>
Max 2MB per Image 每张图片最大2MB
That's the element i need to upload the image, but when i try to do the following: 那就是我需要上传图像的元素,但是当我尝试执行以下操作时:
Option 1 选项1
searcher1.find_element_by_class_name('.moxie-shim moxie-shim-html5')
Option 2 选项2
searcher1.find_element_by_class_name('upload-btn')
Option 3 选项3
searcher1.find_element_by_xpath('/div')
I get the following (for option 3, for example): 我得到以下信息(例如,对于选项3):
NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"/div"}
What's the problem? 有什么问题? I'm stuck :( 我被卡住了:(
For relative xpath, you need to put a .
对于相对的xpath,您需要输入.
in front of it. 在它前面。 Try: 尝试:
searcher1.find_element_by_xpath('./div')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.