Что нового

[Сеть / Интернет] Просмотр HTML

Noobs Enslaver

Чайник
Сообщения
10
Репутация
0
Здрасте все,у меня вопрос по работе _IEBodyReadText
1. как заставить скрипт читать текст с определенной страницы
2. заставить при нахожде определенного текста делать скрин

подскажите плз,мб даже пример какой то выложите,а то стандартный мануал - он в этой теме не переведен на русский и читает текст строго из _IE_Example.Заранее спс.
 

ZanMax

Тестер
Сообщения
120
Репутация
5
:-[ буду тоже признателен.
Таже проблема. Есть ТХТ файл из словами :
porno
xxx
sex
vkontakte
...
если на странице есть такой текст делать скрин.
Помогите реализовать :smile: буду очень признателен !
 

El Panda

Продвинутый
Сообщения
101
Репутация
59
Вот простой пример как это можно реализовать с IE.
При этом IE за которым следим, мы запускаем сами, при желании можно и аттачится к существующим окнам, но с этим чуть сложнее.

Слова записываем в файл badwords.txt в директории скрипта, каждое слово с новой строки.

Код:
#include <File.au3>
#include <Array.au3>
#include <IE.au3>
#include <ScreenCapture.au3>

Global $oIE  = _IECreate("about:blank",0,1,1)
Global $oEvt = ObjEvent($oIE, "IE_Events")
_IEErrorHandlerRegister("IEErrFunc")

Global $BAD_WORDS
Global $source_cache
_FileReadToArray(@ScriptDir&"\badwords.txt",$BAD_WORDS)

While 1
	Sleep(500)
WEnd


;----------------------------------------------------------------------------------------------
; Ловим события IE
Func IE_Events($param)
   Switch $param
	   Case "NavigateComplete","NavigateComplete2"
              ContentCheck()
   EndSwitch
EndFunc


;----------------------------------------------------------------------------------------------
; Проверяем содержимое страницы
Func ContentCheck()
        $source = _IEDocReadHTML($oIE)
	If $source<>$source_cache Then
	    For $i=1 to $BAD_WORDS[0]
		   If StringInStr($source,$BAD_WORDS[$i])>0 Then
			  _ScreenCapture_Capture(@ScriptDir &"\"&@MDAY&@MON&@YEAR&@HOUR&@MIN&@SEC&".jpg")
		   EndIf
	    Next
	    $source_cache = $source
       EndIf
EndFunc


;----------------------------------------------------------------------------------------------
Func IEErrFunc()
    SetError(1)
    Return
EndFunc
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4 020
Репутация
622
а скрин чего? сайта где есть нужное слово?
Код:
#include <IE.au3>
$oIE = _IECreate('mail.ru', 0, 1)
$sTxt = _IEBodyReadText($oIE)
WinSetState('[ACTIVE]', '', @SW_MAXIMIZE)
Sleep(100)
If StringInStr($sTxt, 'mail') Then Send('{PRINTSCREEN}')

это если просто нажимать PrtScr при нахождении чего либо, но бытует мнение что Send команды не всегда надежны.
Поэтому можно задействовать _ScreenCapture_Capture - он заодно и в файл сохранит. думаю в хелпе разберешься, как это сделать ;)

Update
Во, выше более продвинутый скрипт :D
 

ZanMax

Тестер
Сообщения
120
Репутация
5
=) не хочу создавать новую тему. Потому задаю вопрос в даной.
Как можно запретить достпук к домену с любого браузера.
1. на работе нужно ограничить доступ к порно и не только ресурсам.
2. Подростает маленькая дочка
Хочу написать софт который не будет пускать на порно ресурсы.

P.S. ЗА 5 мин. серфинга в Гугле по запросу PORN нашол болие 100 линков :shok: :shok: :shok: в шоке. Куда мы катимся :'(
 

El Panda

Продвинутый
Сообщения
101
Репутация
59
1. на работе нужно ограничить доступ к порно и не только ресурсам.
На работе наверняка стоит карпаративный проксик использующий некий софт (UserGate, Kerio и т.п.), с его помощю и ограничивай доступ.

2. Подростает маленькая дочка
Хочу написать софт который не будет пускать на порно ресурсы.
Если задача именно написать самому, то разбирайся с принципами работы прокси софта. Пиши некую прослойку, фильтрующую трафик и отдающую только разрешенный контент.

P.S. ЗА 5 мин. серфинга в Гугле по запросу PORN нашол болие 100 линков :shok: :shok: :shok: в шоке. Куда мы катимся :'(
Это индустрия в которой крутятся большие бабки, ближайшее время от этого никуда не деться :(



Да и еще...
Меня этот вопрос (фильтрация контента) тоже волнует.
Я представляю как реализовать такую систему и предлагаю совместную разработку более-менее серьезного продукта.
Если будет отклик то создам тему в разделе "партнерство" ;)
 

ZanMax

Тестер
Сообщения
120
Репутация
5
Ну на работе понятно.
А вот как дома. Дома VPN Доскуп к провайдеру.
%) хотя была идея поставить прокси на 127.0.0.1 и весь трафик лить через прокси.
Да и сам понимаю что нужно что-то между браузером и провайдером.
Хотя может кто придумает болие изощренный метод.
Спасибо .
 

El Panda

Продвинутый
Сообщения
101
Репутация
59
ZanMax сказал(а):
%) хотя была идея поставить прокси на 127.0.0.1 и весь трафик лить через прокси.
Именно это и нужно, ничего изощреннее не придумаешь.
Все браузеры настраиваешь на работу с локальным проксиком (твоей программой), она слушает подключения от браузера, перенаправляет их во вне, получает ответ, анализирует его на предмет запрещенного контента и отдает обратно браузеру.

Это просто, сложнее придумать как защитится от банального отключения прокси в браузере, если это всё работает в рамках одной машины.
 
Верх