スクレイピング時のデータが途中で切れてしまう
by
データが途中で切れてしまうさん
(4e8aee8e)
投稿数:0回
(ベストアンサー:0回)
(ベストアンサー:0回)
2023/11/11 19:29
自分のサイトからデータを取得したいのですが、上手く行きません。
下記コード内のResponseTextにスクレイピングした内容が入るのですが、途中で切れてしまいます。
完全取得するまで待つように設定しても、やはり結果は同じでした。
対処策や原因がお分かりになる方がいらっしゃれば教えて頂けると助かります。
Sub test()
' WinHTTPオブジェクトを作成
Dim WinHttpReq As Object
Set WinHttpReq = CreateObject("WinHttp.WinHttpRequest.5.1")
' サイトのURLを指定
Dim URL As String
URL = ********
' GETリクエストを送信
WinHttpReq.Open "GET", URL, False
WinHttpReq.send
' レスポンスを取得
Dim ResponseText As String
ResponseText = WinHttpReq.ResponseText
End Sub
下記コード内のResponseTextにスクレイピングした内容が入るのですが、途中で切れてしまいます。
完全取得するまで待つように設定しても、やはり結果は同じでした。
対処策や原因がお分かりになる方がいらっしゃれば教えて頂けると助かります。
Sub test()
' WinHTTPオブジェクトを作成
Dim WinHttpReq As Object
Set WinHttpReq = CreateObject("WinHttp.WinHttpRequest.5.1")
' サイトのURLを指定
Dim URL As String
URL = ********
' GETリクエストを送信
WinHttpReq.Open "GET", URL, False
WinHttpReq.send
' レスポンスを取得
Dim ResponseText As String
ResponseText = WinHttpReq.ResponseText
End Sub
by
web勉強中さん
(8cd3947d)
投稿数:54回
(ベストアンサー:5回)
(ベストアンサー:5回)
2023/11/13 22:17
自分のサイトで試したところちゃんと取得できましたので、
サイトのソース上の問題か、
レスポンスの確認方法の問題ではないでしょうか。
' レスポンスを取得
Dim ResponseText As String
ResponseText = WinHttpReq.ResponseText
Dim sFile As String
Dim adoFile As Object
sFile = Environ("UserProfile") & "\Desktop\" & "test_output_ResponseText.txt"
Set adoFile = CreateObject("ADODB.Stream")
adoFile.Charset = "utf-8"
adoFile.Open
adoFile.WriteText ResponseText
adoFile.SaveToFile sFile, 2 ' 2 = adSaveCreateOverWrite
adoFile.Close
End Sub
サイトのソース上の問題か、
レスポンスの確認方法の問題ではないでしょうか。
' レスポンスを取得
Dim ResponseText As String
ResponseText = WinHttpReq.ResponseText
Dim sFile As String
Dim adoFile As Object
sFile = Environ("UserProfile") & "\Desktop\" & "test_output_ResponseText.txt"
Set adoFile = CreateObject("ADODB.Stream")
adoFile.Charset = "utf-8"
adoFile.Open
adoFile.WriteText ResponseText
adoFile.SaveToFile sFile, 2 ' 2 = adSaveCreateOverWrite
adoFile.Close
End Sub