2016-04-13 13 views
-1

Yapmaya çalıştığım basit bir program çalıştırmama izin vermesidir ve temel olarak Torrentz'e gider ve son olarak dosyayı uttorent aracılığıyla indirebilmek için birkaç bağlantıyı takip eder. Aşağıda ben şimdiye kadar kodlanmış ve değişkeni linkElem çalışma yapmak için görünmüyor. Ve ben de linkElem.find_elements_by_xpath yapmak için gerekli bağlantıya gidemiyorum. Neyin yanlış olduğunu düşünüyorsanız, lütfen yardım edin. Teşekkürler.Selenium Python 3.4.3 Otomatik Torrenting: Bağlantı bölümü

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.Firefox() 
browser.get('https://torrentz.eu/') 

searchElem = browser.find_element_by_id('thesearchbox') 
searchElem.send_keys('Limitless') 
searchButton = browser.find_element_by_id('thesearchbutton') 
searchButton.click() 

linkElem = linkElem.find_elements_by_xpath("//div[@class='results']//a[@href='/9ea0c575520a3065d85b285c9474231192368db7']") 


#wait = WebDriverWait(browser, 6) 
#linkElem = wait.until(EC.visibility_of_element_located((By.href, "/9ea0c575520a3065d85b285c9474231192368db7"))) 
#linkElem.clear() 

#linkElem = browser.find_element_by_link_text('S01E20 HDTV x264 LOL ettv') 
#linkElem.click() 


#SignIn = browser.find_elements_by_id('signIn') 
#SignIn.click() 
#passwordElem.submit() 

cevap

0

Seni ve href öznitelik değerinin güvenmek gerektiğini sanmıyorum. Bunun yerine, arama sonuçları kapsayıcısının içindeki dl öğelerinin altındaki bağlantıları alın. Ayrıca, bir bekleme ekleyin: arama sonuçları tüm bağlantıları içerecektir sizin durumunuzda

# wait for search results to appear 
wait = WebDriverWait(browser, 6) 
wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, "div.results dl"))) 

links = driver.find_elements_by_css_selector("div.results dl dt a") 
links[0].click() 

links, links[0] ilk bağlantıdır.

+0

Hey @alecxe, bu durumda özellikle "dl" nin ne yaptığını ve "bağlantılar" parametrelerinin ne yaptığını anlamama yardımcı olabilir misiniz? –

+0

@ stuum1. dl bir eleman ismidir. 'bağlantılar' web bağlantılarının bir listesidir. 'bağlantılar [0]' size listedeki ilk elemanı verir. – alecxe

İlgili konular