Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Парсинг. Проблемы. / 10 сообщений из 10, страница 1 из 1
19.07.2016, 09:23
    #39276022
малыш789654
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
Добрый день.
Пытаюсь осуществить парсинг и всплыло две проблемы.
Код:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Dim my_url As String
Dim xml_obj As New MSXML2.XMLHTTP 
Dim html_doc As MSHTML.HTMLDocument  
    my_url = "…...htm"
    xml_obj.Open "GET", my_url, False 
    xml_obj.send 
    Set html_doc = New MSHTML.HTMLDocument 
    html_doc.body.innerHTML = xml_obj.responseText



Проблема 1:
В xml_obj.responseText вся кириллица превращается в вопросительные знаки.
Проблема 2:
html_doc.body.innerHTML пуст. Тэги ‘<body>’ присутствуют корректно.

В чем может быть причина и как с этим бороться?
Спасибо.
...
Рейтинг: 0 / 0
19.07.2016, 12:40
    #39276179
\\\\
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
Казалось бы, каким тут боком Access?...
...
Рейтинг: 0 / 0
19.07.2016, 15:19
    #39276353
малыш789654
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
Вопрос по теме.
xml_obj.send – в xml_obj получаем объект-документ в кодировке кириллица (windows).
Как можно его перекодировать в юникод utf-8?
Спасибо
...
Рейтинг: 0 / 0
19.07.2016, 15:39
    #39276383
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
малыш789654,

18201578
...
Рейтинг: 0 / 0
19.07.2016, 19:13
    #39276614
малыш789654
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
guest_rusimport (27 сен 15, 19:39 ) ,
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Dim adoStreamOut As ADODB.Stream
Dim s As New WinHttp.WinHttpRequest
Dim ReturnStr As String, FileNumber, url
url = "http://localhost:8080/opt/out/ReplyAP/68"
Debug.Print url
s.Open "GET", url
s.Send
ReturnStr = s.ResponseText
Set adoStreamOut = New ADODB.Stream
 With adoStreamOut
 .Charset = "UTF-8"
 .Open
 .WriteText ReturnStr
 .SaveToFile "C:\TTN1.xml", adSaveCreateOverWrite
 .Close 
 End With



Не хочет перекодироваться. Вернее создает файл в кодировке "UTF-8", но кириллица в этом новом файле все равно отображается в виде абракадабры.
Перекодировать бы эти данные в UTF-8 на уровне s.Send, или Access заставить читать windows-1251...
Есть какие идеи?
...
Рейтинг: 0 / 0
19.07.2016, 19:19
    #39276617
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
малыш789654,
ты какой программой файл после перекодировки смотришь?
...
Рейтинг: 0 / 0
19.07.2016, 19:54
    #39276635
малыш789654
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
guest_rusimportмалыш789654,
ты какой программой файл после перекодировки смотришь?
ВинХР, Акц2000.

На форме кнопка. При нажатии:
- лезу по url на сайт и вытаскиваю страницу. Страница в windows-1251.
- Загоняю контент в body.innerHTML
- Затем бегаю по тегам и извлекаю необходимые мне данные.
- Данные вношу в таблицы.

Что происходит при использовании предложенной методы:
- Создается хмл файл.
- в файл вносятся данные. Они вносятся до появления первого символа кириллицы.
- Далее формирование файла останавливается

Если данные сохранять в файл html а не xml, то
- Создается файл кодировки UTF-8
- перенос контента происходит полностью, но кириллица как была тарабарщиной, так таковой и остается.

Если html страницу сохранить у себя на диске и применить эту технологию (url = C\...html), то результат будет тот же. Если же эту страницу ручками переформатировать в UTF-8, результат положительный, все корректно работает.
...
Рейтинг: 0 / 0
19.07.2016, 20:02
    #39276637
малыш789654
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
малыш789654guest_rusimportмалыш789654,
ты какой программой файл после перекодировки смотришь?
ВинХР, Акц2000.

На форме кнопка. При нажатии:
- лезу по url на сайт и вытаскиваю страницу. Страница в windows-1251.
- Загоняю контент в body.innerHTML
- Затем бегаю по тегам и извлекаю необходимые мне данные.
- Данные вношу в таблицы.

Что происходит при использовании предложенной методы:
- Создается хмл файл.
- в файл вносятся данные. Они вносятся до появления первого символа кириллицы.
- Далее формирование файла останавливается

Если данные сохранять в файл html а не xml, то
- Создается файл кодировки UTF-8
- перенос контента происходит полностью, но кириллица как была тарабарщиной, так таковой и остается.

Если html страницу сохранить у себя на диске и применить эту технологию (url = C\...html), то результат будет тот же. Если же эту страницу ручками переформатировать в UTF-8, результат положительный, все корректно работает.
...
Рейтинг: 0 / 0
19.07.2016, 20:53
    #39276670
guest_rusimport
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
малыш789654,
Попробуй на основе этого примера http://am.rusimport.ru/msaccess/topic.aspx?ID=378 через IE сделать (он по идее уже сам с кодировкой разберется), вообщем поизучай внимательно, не спеша, сделай маленький примерчик на основе этого примера для случая с твоей страничкой... ну , и если не получится - выкладывай пример с этим на форум
...
Рейтинг: 0 / 0
20.07.2016, 16:38
    #39277213
малыш789654
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Парсинг. Проблемы.
guest_rusimport...через IE сделать...
Через IE помогло. Декодирует на лету. Спасибо
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Парсинг. Проблемы. / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]