2016-05-31 15 views
0

ヤフーから在庫データをCSVファイルとして取得するためのコードをいくつか作成しましたが、正常に動作します。私が代わりにGoogleからのminutewiseデータをリコール完全に合法バージョンにURLを変更すると、それはこのURLがIXMLHttpRequestオブジェクトで機能しないのはなぜですか?

objHTTP.open "GET", strURL, False 

声明に失敗します。

次のコードは両方のURLを示していますが、明らかに最後のURLだけが呼び出されます。両方のURLは、ブラウザのアドレスバーに投稿されたときに機能します。

Googleのページへの呼び出しが開かない理由を誰でも説明できますか?

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から。これは、" http://Myserver/Mypath/Myfile.asp "のような絶対URLか、または" ../MyPath/ "のような相対URLです。 MyFile.asp "。" * – Lankymart

関連する問題