2017-07-05 41 views
0

我試圖在搜索欄中自動搜索產品「打印機」,並只檢索EPSON公司產品的MFR編號。但是我得到的輸出比我想要的要多!這是該課程的完整內容。使用Selenium Python僅從網站提取所需的詳細信息

這是我的代碼

from selenium import webdriver 
driver = webdriver.Chrome("C:\All\chromedriver_win32\chromedriver.exe") 
driver.get('https://shop.techdata.com/searchall?b=1&kw=printer') 
items = driver.find_elements_by_class_name('productResult') 

for i, item in enumerate(items): 
    if 'EPSON' in item.text: 
     print(i, item.text) 

預期輸出是

3 

C11CF75201 

這個代碼我得到的(不需要的)輸出的例子是如下所示:

3 EPSON WORKFORCE PRO WF-4740 - MULTIFUNCTION PRINTER (COLOR) 
Multifunction printer - color - ink-jet - Legal (8.5 in x 14 in) (original) 
A4/Legal (media) - up to 22 ppm (copying) - up to 24 ppm (printing) - 500 
sheets 
- 33.6 Kbps - USB 2.0, LAN, Wi-Fi(n), USB host, NFC 

TD#: 12710297 

MFR#: C11CF75201 

Status: Active 

MSRP: 
$299.99 

回答

1

嘗試替換線

print(i, item.text) 

print(i, item.find_element_by_xpath('.//div[@class="productCodes"]/div[2]/span').text) 

獲得所需的輸出

+0

你好,謝謝你的工作的幫助,但我想只有C11CF75201如圖我的輸出。我不想要MFR#。你能告訴我我該怎麼做? – Analyst

+0

檢查更新回答 – Andersson

+0

嗨,這工作。謝謝。如果我想要訪問我的網站的每個頁面並進行搜索,然後移動到下一頁直到最後一頁。我應該怎麼做? – Analyst