Во-первых, этот код работает, большое спасибо QHarr за это.Код работает очень хорошо, когда я использую только URL в коде.
Я наконец-то получил его, чтобы принять критерии поиска из Sheet1, Cell A1.таким образом, я могу поместить свой элемент поиска в A1, и он откроет его, когда откроется IE.Это заняло у меня навсегда тренировки.
Теперь проблема в том, что код не дает никакой информации.единственные изменения сделаны в URL
Я оставил оба кода в коде на данный момент, тот, который работает, активен, а не как комментарий.Второй URL работает, когда элемент поиска помещается в A1, и эта страница открывается в Ebay.в настоящее время этот URL отображается в виде комментария.
Я не могу понять, в чем проблема, кроме того, что мне пришлось оставить эту часть URL отключенной & _ sacat = 0 , так как я продолжаю получатьсообщение об ошибке «Ошибка компиляции - ожидаемое завершение статистики» и не удалось запустить код.
Это мой код
enter Option Explicit
Public Sub GetDataEbay()
Dim htmlDoc As MSHTML.HTMLDocument, ie As SHDocVw.InternetExplorer, ws As Worksheet
Set ie = New SHDocVw.InternetExplorer
Set htmlDoc = New MSHTML.HTMLDocument
Set ws = ThisWorkbook.Worksheets("Sheet1")
Dim nextPageElement As Object
Dim pageNumber As Long
With ie
.Visible = True
'Original Code for search, but only searches 1 item
.Navigate2 "https://www.ebay.co.uk/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=jackets&_sacat=0"
' Takes seach from A1 and places it into ebay
'.Navigate2 "https://www.ebay.co.uk/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=" & Replace(Worksheets("Sheet1").Range("A1").Value, " ", "+")
While .Busy Or .readyState <> 4: DoEvents: Wend
Dim index As Long, HTMLItems As Object, rowNum As Long, xCell As Range
Dim cssSelectors(), i As Long
Select Case True
Case InStr(.document.URL, "ebay.co.uk") > 0
cssSelectors = Array(".gvtitle a", ".amt", ".gvtitle a")
Case InStr(.document.URL, "ebay.com") > 0
cssSelectors = Array(".s-item__title", ".s-item__price", ".s-item__link")
End Select
With ws
For i = LBound(cssSelectors) To UBound(cssSelectors)
rowNum = 1
Set HTMLItems = ie.document.querySelectorAll(cssSelectors(i))
For index = 0 To HTMLItems.Length - 1
.Cells(rowNum, i + 1).Value = IIf(i = 2, HTMLItems.Item(index).getAttribute("href"), HTMLItems.Item(index).innerText)
rowNum = rowNum + 1
Next
Next
For Each xCell In .Range("C1:C25000") '<= all these really?
.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula
Next xCell
End With
'.Quit
End With
End Sub
код здесь
Может кто-нибудь, пожалуйста, посмотрите, я попробовал несколько вариантов URL, чтобы заставить его принятьПоиск на Листе A1 и тот, что в коде, единственный, который не дал мне сообщение «Ошибка компиляции - ожидаемый конец статистики», это также единственная вариация URL, которую я смог получить, чтобы вызвать поисковый элемент в eBay..
Я надеюсь, что более опытный человек сможет увидеть, что мне не хватает, или написать URL лучше.Это единственная проблема.
Спасибо, что посмотрели