返回列表 上一主題 發帖

[發問]VBA抓取.PHP頁問題??

各位高手您好
http://www.gretai.org.tw/ch/stock/statistics/monthly/st44.php
與上述網站相類,但它輸入時有二個參數,目前找到的參數是"yy",想請教一下如果是有stk_no與yy,下面send的程式該如何修改呢? 謝謝
.Send ("stk_no=" & code)

TOP

heavenweaver您好,

我已有複製#12的Sub WrittenByLalalada()來修改
http://www.gretai.org.tw/ch/stock/statstics/monthly/download_st44.php
上列網址有二個參數,已將程式改寫如下,但年度的send條件還是抓取不到(程式碼如下),謝謝您
  1. Private Sub CommandButton1_Click()

  2. '宣告變數
  3. Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
  4. Dim TMP As Workbook

  5. '清除舊資料
  6. Range("A4:Z2000").Select
  7. Selection.Clear

  8. code = Range("A1").Value  '股票代碼
  9. yy = Range("B1").Value  '年度

  10.     '將資料先存至c糟
  11.     With WinHttpReq
  12.     '.Open "POST", "http://www.gretai.org.tw/ch/stock/statistics/monthly/download_st44.php", False
  13.     .Open "POST", Range("C1").Value, False
  14.     .setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
  15.     .Send ("stk_no=" & code & "yy=" & yy)
  16.            Set oStream = CreateObject("ADODB.Stream")
  17.            oStream.Open
  18.            oStream.Type = 1
  19.            oStream.Write WinHttpReq.ResponseBody
  20.            oStream.SaveToFile ("C:\" & code & ".csv")
  21.            oStream.Close
  22.     End With
  23. End Sub
複製代碼

TOP

heavenweaver您好,

想向您請教,先前版本依照您的指導已可正常使用,但今日操作時,發現excel資料載不下來,是否相關參數要修改呢? 謝謝您。
  1. Private Sub CommandButton4_Click()

  2. '宣告變數
  3.    Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
  4.    Dim TMP As Workbook


  5. '清除舊資料
  6.    Range("F66:Z200").Select
  7.    Selection.Clear

  8.    code = Range("A1").Value  '股票代碼
  9.    yy = Range("H4").Value '年度


  10. '將資料先存至c糟
  11.    With WinHttpReq
  12.    .Open "POST", "http://www.gretai.org.tw/ch/stock/statistics/monthly/download_st44.php", False
  13.    .Open "POST", Range("I4").Value, False
  14.    .setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
  15.    .Send "stk_no=" & code & "&yy=" & yy  '傳股票代碼、年度參數
  16.           Set oStream = CreateObject("ADODB.Stream")
  17.           oStream.Open
  18.           oStream.Type = 1
  19.           oStream.Write WinHttpReq.ResponseBody
  20.           oStream.SaveToFile ("C:\" & code & "-M.csv")
  21.           oStream.Close
  22.    End With
  23.    

  24. End Sub
  25.    
複製代碼

TOP

heavenweaver您好,

使用Fiddler工具發現網址有異動,已找到問題了,謝謝您

TOP

        靜思自在 : 自己害自己,莫過於亂發脾氣。
返回列表 上一主題