Нет желания переходить на WIN7 или WIN8 топчусь на Хрюше IE8 переезжает какие-то другие программы и оборудование. Пришлось вернуть IE7. Но даже без использования IE не могу получить исходный код страницы. Пробовал 3 варианта: с IE, URLDownloadToFile, GetHTTPResponse(с этого сайта)тыц во всех ответах сообщение об устаревшей версии обозревателя Есть ли способы помирить IE7 с сервером? Упоминалось где-то, что можно подменить как-то, но примера не нашёл Или ставить WIN7,8 и IE9 уже обязательно? На ХР IE9 не становится. Вот вырезки из моих попыток. STROKA формируется отдельно и в Опере открывается нормально.
Код
Set WB = CreateObject("InternetExplorer.Application")
WB.Navigate STROKA
STR_HTML = WB.Document.body.innerhtml
STR_HTML = GetResponse(STROKA)
STR_HTML = Get_Html(STROKA)
Public Function Get_Html(S As String)
Dim S1, SS
''с загрузкой файла на диск
'Путь по которому сохраняем скачанную страницу
S1 = Environ("temp") & "\Temp_2.log"
'загружаем страницу
URLDownloadToFile 0, S, S1, 0, 0
SS = (CreateObject("Scripting.FileSystemObject").GetFile(S1).OpenAsTextStream(1).ReadAll)
Get_Html = UTF8ToWin(SS)
End Function
Function GetHTTPResponse(ByVal sURL As String) As String
On Error Resume Next
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
With oXMLHTTP
.Open "GET", sURL, False
.send
GetHTTPResponse = .responseText
End With
Set oXMLHTTP = Nothing
End Function
XMLHTTP.setRequestHeader "user-agent", "User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Firefox/24.0"
XMLHTTP.setRequestHeader "Accept-Language", "ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3"' это не обязательно
XMLHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"' это не обязательно
адрес сайта? У меня никогда не было проблем с MSXML2.XMLHTTP и IE8
Извините. Не поздоровался даже. Добрый вечер. Спасибо. Как я понял в строке
Цитата
"User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Firefox/24.0"
Нужно проставлять свои данные? или эта строка достаточна? Буду эксперементировать. Нашёл ещё вариант здесь же на сайте. Работает
Код
Function GetResponse(ByVal URL$) As String
Dim xmlhttp
Set xmlhttp = New WinHttpRequest
xmlhttp.Open "GET", URL$, True: DoEvents
xmlhttp.send: DoEvents
If Not xmlhttp.WaitForResponse(TIMEOUT&) Then
Debug.Print "timeout", URL: Exit Function
End If
GetResponse = xmlhttp.responseText
End Function
Не проходит И ещё вопрос если можно по этой же теме: Даже не знаю куда копать. На сайте http://love.accoona.ru есть выбор региона и города поиска Можно ли сэмулировать этот выбор на форме (или на листе)? Т.е. получить список регионов. После выбора региона получить список городов Т.е. выбирать не в обозревателе, а в списках на форме. Дело в том, что эти списки появляются на всплывающих формах и посмотреть их код я не знаю как. И возможно ли вообще?