2014-12-13 65 views
0

,所以我想從Youtube和例子我收到這種形式的拉縮略圖是在這裏:Python的Xpath的URL圖像

https://www.youtube.com/results?search_query=funny

這樣的XPath找到鏈接,每一個形象,這是什麼我正在尋找,但通過python運行時,它說「無圖像」python出於某種原因不能看到xpath,即使我可以看到它後崩潰,如果我做了測試。

try: 
    thumbnail = browser.find_element_by_xpath("/html/body/div[2]/div[3]/div/div[5]/div/div/div/div[1]/div/div[2]/div[2]/ol/li/ol/li[1]/div/div/div[1]/a/div/img/@src").text 
except NoSuchElementException: 
    print "NO image" 
    thumbnail = 'n/a' 

任何人有任何想法?

+0

標記爲重複的,但懷疑這是一個重複不復存在。 – Jarad 2016-12-15 17:17:14

回答

5

獲取所有img標籤中的「結果」分區,然後使用get_attribute()得到src屬性值:

from selenium import webdriver 

driver = webdriver.Firefox() 
driver.get('https://www.youtube.com/results?search_query=funny') 

for image in driver.find_elements_by_xpath('//div[@id="results"]//img[@src]'): 
    print image.get_attribute('src') 

driver.close() 

打印:

https://i4.ytimg.com/vi/cKhqUOncefY/mqdefault.jpg 
https://i1.ytimg.com/vi/6-JDfR8x55E/mqdefault.jpg 
https://i.ytimg.com/vi/7KU8leAQat4/mqdefault.jpg 
https://i.ytimg.com/vi/R7ghDhpCLKM/mqdefault.jpg 
https://i.ytimg.com/vi/VxvDVhjALoU/mqdefault.jpg 
... 
+0

我能否通過這種方式將從清單#1中獲得的信息歸類爲縮略圖#1,並將其拉出所有圖像。 – BubblewrapBeast 2014-12-13 12:37:45

+0

@BubblewrapBeast燁,'driver.find_element_by_xpath( '// DIV [@ ID = 「結果」] // IMG [@src]')。get_attribute( 'SRC')'。 – alecxe 2014-12-13 14:53:50