Selenium + Python - 如何在上传图像后从网站获得响应

时间:2015-05-30 15:25:54

标签: python selenium selenium-webdriver

我尝试将图片上传到Microsoft的http://how-old.net/ API,以便与我们的年龄和性别分类算法[1]进行比较。

我设法将图片上传到网站,但我无法弄清楚如何获得回复(即年龄和性别分类)。

这是我的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Firefox()
driver.get("http://how-old.net/")
file_input=driver.find_element_by_id("uploadBtn")
driver.execute_script("arguments[0].style = {visibility: 'visible'};", file_input)
a = file_input.send_keys("D:\\AdienceFaces\\aligned\\7153718@N04\\landmark_aligned_face.2282.11597935265_29bcdfa4a5_o.jpg")

有没有办法预测?

提前致谢! 吉尔

[1] Levi,Gil和Tal Hassner。 "使用卷积神经网络进行年龄和性别分类。"

编辑:添加了等待命令和其他代码行,仍然返回None:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

import time



driver = webdriver.Firefox()
driver.get("http://how-old.net/")

time.sleep(60)

file_input=driver.find_element_by_id("uploadBtn")
driver.execute_script("arguments[0].style = {visibility: 'visible'};", file_input)
file_input.send_keys("D:\\AdienceFaces\\aligned\\7153718@N04\\landmark_aligned_face.2282.11598166203_c70bb34c80_o.jpg")

time.sleep(60)

ages = driver.execute_script("function get_ages() { arr=[]; $('#faces .tooltip-inner div').each(function () { arr.push($(this).text()); }); return arr;}; get_ages();")
print ages

1 个答案:

答案 0 :(得分:1)

尝试:

ages = driver.execute_script("function get_ages() { arr=[]; $('#faces .tooltip-inner div').each(function () { arr.push($(this).text()); }); return arr;}; return get_ages()")

干杯。