Я пытаюсь загрузить сценарий селена для загрузки изображения из MTURK HIT. Мой скрипт может войти в MTurk, перейти на страницу «принять новую HIT» для HIT, с которой я хочу захватить изображение, но тогда я не могу указать его на конкретное изображение, которое я хочу. Я пробовал все методы, перечисленные в документации selenium (find_element_by_class_name, by_id, by_element)
и т. Д., И я не могу это понять.С трудом указывающий Selenium вправо iFrame [python]
То, что я до сих пор:
from selenium import webdriver
from bs4 import BeautifulSoup
driver = webdriver.Firefox()
driver.get("https://www.mturk.com/mturk/myhits")
elem = driver.find_element_by_id("ap_email")
elem.send_keys('####')
elem = driver.find_element_by_id("ap_password")
elem.send_keys('###')
elem = driver.find_element_by_id("signInSubmit-input")
elem.click()
driver.get("https://www.mturk.com/mturk/previewandaccept?groupId=3ZXRRTK2NDCB5NW5M24C9P2OWG41OF")
hit = driver.switch_to_frame("ExternalQuestionIFrame")
print(hit)
Выход это дает мне:
None
Выход я бы ожидать: HTML, в пределах ссылки https://backend.ibotta.com/receipt_moderation/50730299/edit?assignmentId=33FBRBDW6OZTOIJ53FZR716JLOQC8N&hitId=3D3B8GE892RAASDPNAMA2D4I3E3P9G&workerId=A1DY4DM16TBFPL&turkSubmitTo=https%3A%2F%2Fwww.mturk.com
элемент I» m, пытающийся достичь, упоминается в источнике страницы как ExternalQuestionIFrame
, как показано ниже:
</style><iframe height="1000" scrolling="auto" frameborder="0" align="center" src="https://backend.ibotta.com/receipt_moderation/50730299/edit?assignmentId=33FBRBDW6OZTOIJ53FZR716JLOQC8N&hitId=3D3B8GE892RAASDPNAMA2D4I3E3P9G&workerId=A1DY4DM16TBFPL&turkSubmitTo=https%3A%2F%2Fwww.mturk.com" name="ExternalQuestionIFrame"></iframe>
Может ли кто-нибудь увидеть, в чем я ошибаюсь? Любые ответы очень ценятся!
Спасибо СТОЛЬКО, alecxe! – n1c9