我正在为工作而工作,似乎遇到了一个小问题。这个项目是一个类似于网络保姆的项目,但品牌是我客户的公司。它将有功能,如网站拦截网址,关键字和网络活动日志。我还需要它能够“暂停”下载,直到输入一个可接受的用户名和密码。在
我发现了一个脚本来监视在internetexplorer中访问的URL(如下所示),但它似乎使浏览器的速度大大减慢。对于如何在其他浏览器中实现这一点,我没有找到任何支持或想法。在
所以,我的问题是:
(一)。如何监视其他浏览器活动/访问的URL? 2) 一。除非输入可接受的用户名和密码,否则如何阻止下载?在
from win32com.client import Dispatch,WithEvents
import time,threading,pythoncom,sys
stopEvent=threading.Event()
class EventSink(object):
def OnNavigateComplete2(self,*args):
print "complete",args
stopEvent.set()
def waitUntilReady(ie):
if ie.ReadyState!=4:
while 1:
print "waiting"
pythoncom.PumpWaitingMessages()
stopEvent.wait(.2)
if stopEvent.isSet() or ie.ReadyState==4:
stopEvent.clear()
break;
time.clock()
ie=Dispatch('InternetExplorer.Application',EventSink)
ev=WithEvents(ie,EventSink)
ie.Visible=1
ie.Navigate("http://www.google.com")
waitUntilReady(ie)
print "location",ie.LocationName
ie.Navigate("http://www.aol.com")
waitUntilReady(ie)
print "location",ie.LocationName
print ie.LocationName,time.clock()
print ie.ReadyState
我建议你看看一个不错的网络代理。如果这些机器都在同一个网络上,您可以实现一个透明的缓存web代理,并在其上添加过滤规则。它们的速度很快,可以做很多很酷的事情。在
我对鱿鱼有些运气。这能解决你的问题吗?在
您需要将其实现为C++BHO,sink DWebBrowserEvents2::OnBeforeNavigate并在那里实现您的逻辑,因为它是一个将同步阻止导航直到您返回的位置,并且您还可以取消导航。在
相关问题 更多 >
编程相关推荐