2016-12-24 18 views
1

こんにちはすべて私の仕事は、提供リンクlike this oneからソースURLをスクラップすることです。Python Selenium URLから画像が抜けている

しかし、私はこの(最初の時間はメインページに私をリダイレクトしているので、私は、クッキーを取得するには、URLの2つの要求を行うことに注意してください)のような要素を取得しよう:

driver = webdriver.Firefox(executable_path="C:\\selenium-drivers\\geckodriver.exe") 
driver.get("http://www.kmart.com/joe-boxer-men-s-pajama-shirt-pants-plaid/p-046VA92629712P") 
driver.get("http://www.kmart.com/joe-boxer-men-s-pajama-shirt-pants-plaid/p-046VA92629712P") 
img_element = driver.find_elements_by_class_name("main-image") 

いいえ要素が見つかったときに、Ctrl + Uでブラウザのソースコードでそれらを検索しようとすると、それらが見つかりません。なぜこうなった?これらの画像を取得する方法を教えてくれる人は誰ですか?

答えて

2

あなただけの患者とwait for element's visibilityするセレンを指示する必要があります:

from selenium.webdriver.support.ui import WebDriverWait 
from selenium import webdriver 
from selenium.webdriver.common.by import By 
from selenium.webdriver.support import expected_conditions as EC 

# driver definition here 

driver.get("http://www.kmart.com/joe-boxer-men-s-pajama-shirt-pants-plaid/p-046VA92629712P") 

wait = WebDriverWait(driver, 10) 

# get the main image element 
img_element = wait.until(EC.visibility_of_element_located((By.CLASS_NAME, 'main-image'))) 
print(img_element.get_attribute("alt")) 

driver.close() 

デモの目的のために、それがある、画像のalt属性を出力します。

Joe Boxer Men's Pajama Shirt & Pants - Plaid 
+0

ああ私の神はあなたですm救世主!ありがとう、私は要素を待つための機能があることを知らなかった。メリークリスマス! – Psyke

0

かのことができます。 xpathで見つけてイメージURLを取得する

>>> driver.get('http://www.kmart.com/joe-boxer-men-s-pajama-shirt-pants-plaid/p-046VA92629712P') 
>>> s = driver.find_element_by_xpath('//*[@id="overview"]/div[1]/img') 
>>> s.get_attribute('src') 
'http://c.shld.net/rpx/i/s/i/spin/-122/prod_2253990712?hei=624&wid=624&op_sharpen=1' 
+0

これも大変ありがとうございます!メリークリスマス – Psyke

関連する問題