Gagal Scrape Data di Range

  1. ‹ Older
  2. 5 tahun lalu
    Di sunting 5 tahun lalu oleh manweljs_

    @awe

    dari gambar diatas, "in_stock" dari "sku" tersebut = True

    bener gak ? kalo benar berarti metodenya salah, karena yang anda cari kan yang nilai = False

    bdw, SKU nya juga ada 4 :D

    SKU.PNG

  3. @manweljs_

    Mohon maaf berikut detailnya:

    Link : https://www.jakmall.com/computindo/cover-hujan-sepatu#2644383360843
    SKU : OMTP2VBL
    -image-

    Ini yang dalam html :

    -image-

    Berikut saya lampirkan script excel saat ini saya pakai

    Terima kasih

  4. @awe

    itu kan buka di chrome, kalo buka di IE muncul gak SKU nya ?

    tolong dikonfirm donk

  5. @manweljs_

    Iya kak benar tampilan website di IE tidak menampilkan SKU

  6. Di sunting 5 tahun lalu oleh awe

    @manweljs_

    Setiap belakang Link Produk ada 13 angka yang menunjukan juga sebagai sku produknya

    Contoh:

    https://www.jakmall.com/fast-n-cheap/botol-parfum-travel-size-refillable-atomizer-spray-5ml?jtm=0e28dd1fe4a54ad9a7a499afe18b96dbebe50f8d24ebebe2e54aaf393cf130eafef67f46ae20b041b345bb397cac1fc79c3f6686142e3cb1481124f1f024fa9e1efb3e62af85dae9fe90cf9cf4293a78f6515e01a63e60da5aa718fa#8030363832678
    SKU : 8030363832678

    https://www.jakmall.com/computindo/cover-hujan-sepatu#2644383360843
    SKU : 2644383360843

    https://www.jakmall.com/bajuju/sepatu-slip-on-mesh-kasual-pria?jtm=120f83c7ee21461c31dec939c811cec9ff8726352e4a3b22faa9063c1394924ca4a5481297ccc4420ed4d45cb3c6bb1915e3fddb46d55cd502157bb568fcdb40974b1bac8e82a5d779aa113852f86b8c623c55bf881f9a1a51f49fe6#5382203419298
    SKU : 5382203419298

    Ini tampilan di html bodynya:
    -image-

    Apakah bisa dari sku yang di belakang link website tersebut kita mendapatkan in_stock yang di produk itu mas sorry?

    Edit tambahin screenshot tampilan html body

  7. @awe

    saya rasa bisa :), bentar ya

  8. thank you mas @manweljs_ :)

  9. manweljs_

    16 Nov 2018 Terverifikasi Jawaban Terpilih + 11.321 Poin
    Di sunting 5 tahun lalu oleh manweljs_

    @awe

    coba skrip berikut :

    Sub GetFromWeb()
    Dim Ie As New InternetExplorer
    Dim lIdx As Long
    
    Range("c2:d300").Clear
    
    lIdx = Range("A" & Rows.Count).End(xlUp).Row
    With Ie
        For i = 2 To lIdx
        .Visible = False
        .navigate Cells(i, 1).Value
            Do
                DoEvents
            Loop Until .readyState = READYSTATE_COMPLETE
            
            sBuffer = .document.body.innerHTML
            
            'Cek SKU 13 Karakter dahulu
            SKU = Chr$(34) & Right(Sheet1.Cells(i, 1), 13) & Chr$(34) & "," & """sku""" & ":"
            SKUpos = InStr(1, sBuffer, SKU)
            If SKUpos Then
              SKU = Mid(sBuffer, SKUpos + Len(SKU), 10)
              SKU = Replace(SKU, Chr$(34), "")
            End If
            
            'Cari Posisi SKU 8 karakter
            SKUpos = 0
            SKUpos = InStr(1, sBuffer, """sku""" & ":" & Chr$(34) & SKU & Chr$(34))
            
            'Kata kunci pencarian
            xHarga = Chr$(34) & "final" & Chr$(34) & Chr$(58)
            xStok = Chr$(34) & "in_stock" & Chr$(34) & Chr$(58)
            xHargaPos = InStr(SKUpos, sBuffer, xHarga)
            xStokPos = InStr(SKUpos, sBuffer, xStok)
            
                'Harga :
                If xHargaPos Then
                  sTemp = vbNullString
                  sTemp = Mid(sBuffer, xHargaPos + Len(xHarga), 50)
                  sTemp = Mid(sTemp, 1, InStr(1, sTemp, Chr$(44)) - 1)
                  Sheet1.Cells(i, 3) = sTemp
                End If
            
                'Stok :
                If xStokPos Then
                  sTemp = vbNullString
                  sTemp = Mid(sBuffer, xStokPos + Len(xStok), 50)
                  sTemp = Mid(sTemp, 1, InStr(1, sTemp, Chr$(44)) - 1)
    
                    If sTemp = "null" Then
                      Sheet1.Cells(i, 4) = "Stok Tersedia"
                    ElseIf sTemp = "0" Then
                      Sheet1.Cells(i, 4) = "Stok tidak tersedia"
                      Else
                      Sheet1.Cells(i, 4) = "Stok Tinggal " & sTemp
                    End If
                End If
            Next i
    End With
    
    ' Note : hasilnya masih ngawur :P
    Ie.Quit
    Set Ie = Nothing
    Application.StatusBar = ""
    MsgBox "Selesai boss Awe", , "Selamat"
    End Sub

    Note : hasilnya sengaja belum sesuai harapan, silahkan di kembangkan ;)

  10. @manweljs_

    Wah petunjuk dan jalan yang terang banget
    Akhirnya sudah berhasil Mas
    terima kasih banyak Mas Man atas bantuannya.
    Mohon maaf sita waktu mas ikut dalam masalah ini
    Semoga Mas sehat selalu dan di berkati Tuhan, amin..

    Salam
    Awe

  11. 4 tahun lalu

    kak @awe ada script untuk shopee dan bukalapak gk yaa,,,,,
    kalau ada,,,,,,,aku mau kak hehe :)

 

atau Mendaftar untuk ikut berdiskusi!