2013-02-17 24 views
0

Im從網站上取消部分產品的價格。在Python中,我使用urllib2沒有問題,但是當我嘗試在R中使用RCurl時,我無法加載源代碼。嘗試使用RCurl獲得產品的價格

我必須粘貼源代碼與產品代碼,然後我趕上價格。產品的路徑是:http://www.americanas.com.br/produto/code_of_product

其實,我不能用RCurl下載產品的源代碼。當我嘗試getURL('http://www.americanas.com.br/produto/111467594')時,它返回「」。

我嘗試使用getURL('.../produtos/111467594'),我可以下載源代碼,但這樣我就無法獲得價格。 :(

有誰知道我能得到產品的價格是多少?

感謝。

詩:對不起我的英文不好。:)

回答

2

歡迎StackOverflow上。

很難說爲什麼它不起作用,你可以在getURL中加入verbose=TRUE嗎?另外,我注意到您鏈接的網頁上有不同的價格。你想要全部或只是第一個?這個怎麼樣獲得「POR價格」:

library("stringr") 

productwebpage<-readLines("http://www.americanas.com.br/produto/111467594") 
pricerow<-productwebpage[grep("p class=\"sale price\"",productwebpage)] 
price<-str_extract_all(pricerow,"\\(?[0-9,.]+\\)?")[[1]] 

你也可以替代grep("p class=\"sale price\"",productwebpage)要麼grep("<p><span class=\"regular price\">",productwebpage)(獲得「德價格」 /老價格)或grep("<span class=\"p-v interest\">",productwebpage)(這將給你的「SEM jouros 「價格/每月付款)。對於最後一個例子,你會得到個月來首次後付款所以這將是:

> price 
[1] "12" "83,25" 

這應該對其他產品有望以及工作(只是嘗試5,似乎爲所有這些工作)。

+0

它正在工作!萬分感謝。 :) 我很高興。 – Djongs 2013-02-18 20:05:03

+0

@ user2080573如果您認爲我已經回答了您的問題,您可以選擇我的帖子作爲答案,以便很明顯此主題已得到解答。 – nadizan 2013-02-19 11:49:51

相關問題