0

私はセレンに慣れようとしています。私は と一緒に仕事をしようと決めfacebook、プロフィールを で満たすことにしましseleniumた。しかし、使いすぎajaxです。出身地などを満たすのはそれほど複雑ではありませんが、画像をアップロードする方法がよくわかりません。ajaxアップロードとウェブカメラの写真のどちらかを選択するフォームがあります。そして、どうにかしてアップロードダイアログを処理する必要があります...何かアイデアはありますか?

4

1 に答える 1

1

わかりました...思ったよりずっと簡単でした。私が必要としたのは、ファイル入力がロードされた ajax ボックスまで待っsend_keysてから、画像の場所を指定するだけでした。

        try:
            self.driver.find_element(By.CLASS_NAME, u"sx_53a53c").click()
            WebDriverWait(self.driver, 10).until(ec.presence_of_element_located((By.CLASS_NAME, u"fbTimelineSelectorFileInput")))
            WebDriverWait(self.driver, 10).until(ec.presence_of_element_located((By.NAME, u"pic")))
            self.driver.find_element(By.NAME, u"pic").send_keys("~/Downloads/z_ed6e1de4.jpg")
        except NoSuchElementException as nse:
            print 'Error. Element not found! '.format(nse.message)
        except:
            print "Something went wrong."
            import traceback
            type_, value_, trace_ = sys.exc_info()
            print traceback.format_tb(trace_)
于 2013-10-09T13:52:50.893 に答える