1
這是我的代碼:屏幕硒刮8
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
browser = webdriver.PhantomJS()
browser.set_window_size(1120, 550)
browser.get("http://www.jamiiforums.com/kenyan-news/225589-kenyan-and-tanzanian-surburbs.html")
username = browser.find_element_by_id("navbar_username")
password = browser.find_element_by_name("vb_login_password_hint")
username.send_keys("user")
password.send_keys("password")
browser.find_element_by_class_name("loginbutton").click()
wait = WebDriverWait(browser, 10)
wait.until(EC.visibility_of_element_located((By.XPATH, '//h2[contains(., "Redirecting")]')))
wait.until(EC.title_contains('Kenyan & Tanzanian'))
link = browser.find_element_by_xpath('//div[@class="vbseo_liked"]/a[contains(@onclick, "return vbseoui.others_click(this)")]')
link.click()
browser.save_screenshot('screenie.png')
print 'success!!'
browser.close()
對於這個HTML代碼:
<div class="vbseo_liked">
<a href="http://www.jamiiforums.com/member.php?u=8355" rel="nofollow">Nyaralego</a>
,
<a href="http://www.jamiiforums.com/member.php?u=8870" rel="nofollow">Sikonge</a>
,
<a href="http://www.jamiiforums.com/member.php?u=8979" rel="nofollow">Ab-Titchaz</a>
and
<a onclick="return vbseoui.others_click(this)" href="http://www.jamiiforums.com/kenyan-news/225589-kenyan-and-tanzanian-surburbs.html#">11 others</a>
like this.
</div>
我希望能夠點擊此鏈接:
<a onclick="return vbseoui.others_click(this)" href="http://www.jamiiforums.com/kenyan-news/225589-kenyan-and-tanzanian-surburbs.html#">11 others</a>
然後在點擊頁面後截取頁面的截圖。當我運行代碼時,我一直得到這個錯誤。
selenium.common.exceptions.NoSuchElementException:消息:{ 「的errorMessage」: 「無法找到與類名元素 'vbseo_liked'」
再次感謝您的回答。儘管如此,我仍然得到一個超時錯誤。 selenium.common.exceptions.TimeoutException: 它可能是因爲它永遠不會到那個頁面? – user3078335 2015-03-30 19:28:06
@ user3078335嗯有趣,它適用於我雖然。你能用'30'代替'10'嗎? (真的需要花費一些時間才能加載'11 others'頁面) – alecxe 2015-03-30 19:29:11
我之前嘗試過20次。讓我看看30是否有用。 – user3078335 2015-03-30 19:29:59