我是新來的Python和硒,我只是遇到了一個問題。 我試圖製作一個腳本,它會自動點擊Facebook頁面的LIKE按鈕(在彈出窗口中)。Python中硒的Ubuntu:WebDriverWait會找不到元素
編輯 - 本地主機網頁代碼:
<html>
<head>
<title>Link to Facebook Page</title>
<link rel="stylesheet" type="text/css" href="default.css">
</head>
<body>
<center>
<div id="fb_like">
<a href="https://m.facebook.com/AdagioTV" target="_blank"><img src="fblogo.png"></a>
</div>
</center>
</body>
</html>
我有以下代碼:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
webpage = r"http://localhost/like/" # local web
driver = webdriver.Firefox()
driver.get(webpage)
sbox = driver.find_element_by_class_name("fb_like")
sbox.click()
print "opened fb popup"
現在,頁面打開我們的Facebook頁面的移動版本(IN彈出式),這是類似的:https://m.facebook.com/AdagioTV
我有以下代碼爲了等待頁面加載並單擊類似按鈕:
time.sleep(5)
print "slept 5 seconds" # page loading time
WebDriverWait(driver, delay).until(EC.presence_of_all_elements_located((By.ID, 'action_bar')))
likebutt = driver.find_element_by_link_text('Like')
likebutt.click()
但是,這不會找到元素,既不像或action_bar,它會永遠睡覺。我在這裏做錯了什麼? 謝謝!
也許彈出的是一個'iframe',你需要切換到該幀,然後點擊喜歡 – Stack
感謝您的非常快的答覆。你能指點我一個鏈接,我可以閱讀我怎麼能做到這一點? – unkn0wnx
_「我在做什麼錯在這裏?」 _ - 您嘗試使用自動化工具在Facebook上和內容,這是對他們的服務條款擺在首位互動... – CBroe