powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Работа с IE
7 сообщений из 7, страница 1 из 1
Работа с IE
    #33234858
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Sergey Ch или кто что знает.

lcHTML - в эту переменную загоняется только заголовок загруженной страницы. А как зделать чтоб загружались по строчно все остальное?

*************************

oIE = CreateObject("InternetExplorer.Application")
oIE.Visible = .t.
oIE.Navigate("www.sergey.co.uk")

Inkey(1)
Do While oIE.Document.ReadyState <> "complete"
Enddo

lcHTML = oIE.document.documentElement.innerHTML
If Atc("HTTP 404", lcHTML)<>0 Then
MessageBox("Page not found", 64, "HTTP Error 404")
Endif

oIE.Quit
Release oIE
...
Рейтинг: 0 / 0
Работа с IE
    #33234862
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл еще спросить: Можно ли в загруженной странице осуществлять поиск по всему тексту?
...
Рейтинг: 0 / 0
Работа с IE
    #33234914
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Примерно так, но можно и по другому - способов много...

В memo поле mtemp будет текст, в котором можно искать все, что хочешь...


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
m.lcmoneyweb='http://www.razorcut.co.uk/'

CREATE CURSOR xtemp (mtemp m)
APPEND BLANK
REPLACE mtemp WITH ReadURL( m.lcmoneyweb)

BROWSE 


*
* Grab context from Internet
*
PROCEDURE READURL
LPARAMETERS pcUrlName
DECLARE INTEGER InternetOpen IN wininet.DLL STRING sAgent, ;
  INTEGER lAccessType, STRING sProxyName, ;
  STRING sProxyBypass, INTEGER lFlags

DECLARE INTEGER InternetOpenUrl IN wininet.DLL ;
  INTEGER hInternetSession, STRING sUrl, STRING sHeaders, ;
  INTEGER lHeadersLength, INTEGER lFlags, INTEGER lContext

DECLARE INTEGER InternetReadFile IN wininet.DLL INTEGER hfile, ;
  STRING @sBuffer, INTEGER lNumberofBytesToRead, INTEGER @lBytesRead

DECLARE short InternetCloseHandle IN wininet.DLL INTEGER hInst

#DEFINE INTERNET_OPEN_TYPE_PRECONFIG  0 
#DEFINE INTERNET_OPEN_TYPE_DIRECT  1 
#DEFINE INTERNET_OPEN_TYPE_PROXY  3 
#DEFINE SYNCHRONOUS  0 
#DEFINE INTERNET_FLAG_RELOAD  2147483648 
#DEFINE CR CHR( 13 )

LOCAL lsAgent, lhInternetSession, lhUrlFile, llOk, lnOk, lcRetVal, lcReadBuffer, lnBytesRead

* what application is using Internet services?
lsAgent = "VPF 5.0"

lhInternetSession = InternetOpen( lsAgent, INTERNET_OPEN_TYPE_PRECONFIG, ;
  '', '', SYNCHRONOUS)

* debugging line - uncomment to see session handle
* WAIT WINDOW "Internet session handle: " + LTRIM(STR(hInternetSession))

IF lhInternetSession =  0 
  WAIT WINDOW "Internet session cannot be established" TIME  2 
  RETURN .NULL.
ENDIF

lhUrlFile = InternetOpenUrl( lhInternetSession, pcUrlName, '',  0 , ;
  INTERNET_FLAG_RELOAD,  0 )

* debugging line - uncomment to see URL handle
* WAIT WINDOW "URL Handle: " + LTRIM(STR(hUrlFile))

IF lhUrlFile =  0 
  WAIT WINDOW "URL cannot be opened"
  RETURN .NULL.
ENDIF

lcRetVal = ""
llOk = .T.

DO WHILE llOk
* set aside a big buffer
  lsReadBuffer = SPACE( 32767 )
  lnBytesRead =  0 
  lnOk = InternetReadFile( lhUrlFile, @lsReadBuffer, LEN(lsReadBuffer), @lnBytesRead)

  IF ( lnBytesRead >  0  )
    lcRetVal = lcRetVal + LEFT( lsReadBuffer, lnBytesRead )
  ENDIF

* error trap - either a read failure or read past eof()
  llOk = ( lnOk =  1  ) AND ( lnBytesRead >  0  )
ENDDO

* close all the handles we opened
InternetCloseHandle( lhUrlFile )
InternetCloseHandle( lhInternetSession )

* return the URL contents
RETURN lcRetVal
...
Рейтинг: 0 / 0
Работа с IE
    #33234947
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отлично! Big спасибо. Ето тоже мне надо!
Еще такой вопрос:
А в маленьком коде как можно пролистывать каждую строчку и заносить в переменную lcHTML? Такое возможно?
...
Рейтинг: 0 / 0
Работа с IE
    #33234980
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Недоходящий А в маленьком коде как можно пролистывать каждую строчку и заносить в переменную lcHTML? Такое возможно?
Извините, но мне понятен Ваш вопрос...
...
Рейтинг: 0 / 0
Работа с IE
    #33236117
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TO Sergey Ch

Извените. Неправильно выразился.
Я имел ввиду для это кода:
*************************

oIE = CreateObject("InternetExplorer.Application")
oIE.Visible = .t.
oIE.Navigate("www.sergey.co.uk")

Inkey(1)
Do While oIE.Document.ReadyState <> "complete"
Enddo

lcHTML = oIE.document.documentElement.innerHTML
If Atc("HTTP 404", lcHTML)<>0 Then
MessageBox("Page not found", 64, "HTTP Error 404")
Endif

oIE.Quit
Release oIE

Чтоб в эту переменную 'lcHTML' по очереди заносились строчки как они представлены в HTML коде.
Я сюда хочу еще добавить обработчик строк для вырезания определенных кусков информации в найденной мне строчке.
...
Рейтинг: 0 / 0
Работа с IE
    #33236202
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Недоходящий Чтоб в эту переменную 'lcHTML' по очереди заносились строчки как они представлены в HTML коде.
Я сюда хочу еще добавить обработчик строк для вырезания определенных кусков информации в найденной мне строчке.
Код HTML отличается от обычного текстового кода - там может не быть CHR(13) как это принято в обычных строковых меременных - то есть реально вся Web страница может быть одной длинной строкой... Ищут обычно по вхождению какого-то выражения а не по строкам... Хотя, как говорится - каждый все делает по-своему

Good luck!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Работа с IE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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