2016-04-18 37 views
1

我在Python中使用BeautifulSoup庫來從flipkart中刮取數據。看起來 從網站報廢的數據如下:無法從flipkart刮'交貨日期'

HTML file that needs to be scraped

我實現下面的代碼來獲取交貨日期:

import requests 
    from bs4 import BeautifulSoup 

    f = open("file3.txt",'w') 
    request = requests.get("http://www.flipkart.com/huawei-stainless-steel-black-leather-strap-smartwatch/p/itmeftxerghg4pqx?pid=SMWEFTXEXRDXMYGR&al=o3IgYeHw27sSnkNXR1et9sldugMWZuE7eGHgUTGjVrpdmSA7vzZ7axnEa%2FFU%2FfOBK%2FKVBvTcIys%3D&ref=L%3A4088879532713987740&srno=b_1").text 
    soup = BeautifulSoup(request) 
    for classs in soup.findAll('div',class_ = 'delivery'): 
     for li in classs.find_all('li'): 
      f.write(str(li.text)) 
    f.close() 

運行這段代碼,我得到的輸出以下一個文本文件:

「通常在6-7個工作日內交付。」

上面的文本根本不存在於html文件中。

我的猜測是「交付」是不一樣的休息。我不明白爲什麼「交付」選項沒有被取消。

this is how the data looks in the website

從網上訂購的經驗,我認爲通過交付日期根據命令位置或時間通常會發生變化。這會影響嗎? 有人可以幫忙嗎?提前致謝。

+0

你看的到交貨的詳細信息(點擊問號)?它提到的一件事是,「交貨時間將根據您的位置PIN碼提及」,其中有一個輸入框 – Phillip

+0

是的,有輸入框需要輸入PIN碼。但我們如何刮取交貨日期之後 ? –

回答