2016-05-31 83 views
0

我建立了一些代碼來從雅虎檢索股票數據作爲一個CSV文件,它工作正常。當我改變的URL 完全合法版本,從谷歌回憶minutewise數據,而不是,它失敗的爲什麼這個URL不能在IXMLHttpRequest對象中工作?

objHTTP.open "GET", strURL, False 

聲明。

下面的代碼顯示了兩個URL,但顯然只有最後一個被調用。這兩個URL在發佈到瀏覽器的地址欄時都可以工作。

任何人都可以解釋爲什麼打到谷歌的網頁不會打開?

option explicit 

    Dim objHTTP 
    dim strURL 
    dim objFile 

    dim objFSO 
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
    Set objHTTP = CreateObject("MSXML2.XMLHTTP") 
    ' WORKS: 
    strURL = "http://real-chart.finance.yahoo.com/table.csv?s=UPRO&a=04&b=21&c=2016&d=04&e=31&f=2016&g=d&ignore=.csv" 
    ' DOES NOT WORK: 
    strURL = "www.google.com/finance/getprices?q=UPRO&i=60&p=20d&f=d,c,v,k,o,h,l&df=cpct&auto=0&ei=Ef6XUYDfCqSTiAKEMg" 

    objHTTP.open "GET", strURL, False 
    objHTTP.send 
    msgbox objHTTP.responseText 
    Set objFile = objFSO.CreateTextFile _ 
     ("Yahoo.csv", 2) 
    objFile.Write objHTTP.ResponseText 
    objFile.Close 

回答

2

您在缺少URL時缺少http://。當我添加這個時,我得到了響應數據。

+2

應該是被接受的答案,可能會嘗試填補答案有點?它的工作原因是[IXMLHttpRequest對象](https://msdn.microsoft.com/en-us/library/ms757849(v = vs.85).aspx)需要一個有效的URL *(這意味着包括協議例如'http'或'https')*。從docs - *「請求的URL。它可以是一個絕對URL,比如'」http://Myserver/Mypath/Myfile.asp「',或者一個相對URL,比如'」../MyPath/ MyFile.asp 「'。」 * – Lankymart

相關問題