cashiba 发表于 2016-11-29 11:06:56

如何获取当前网页或激活状态的网页的地址[已解决]

本帖最后由 cashiba 于 2016-12-9 17:23 编辑

有些网站第一次登录(地址A)时,输入账号密码提交后,会再次切换到登录页面(地址B,与A不同),要求再次输入密码,并填写验证码,再次提交后才进入主页面(地址C)
然后登录信息可能会保存到cookie
此后退出再登录,就直接进主页面(地址C),不会再出现验证页面(地址B)。

或者有时因弹出窗口或不确定错误,一次登录不成功,没有进入主页面(地址C)。

这时可能需要判断有没有正确进入主页面(地址C),也就是需要获取当前网页或激活状态的网页的地址(X)是不是主页面地址(C),并做相应处理。

对网页函数只认识一部分,很多都不知道怎么用,有没有这方面的函数呢?
用controlgettext的话感觉也能达到目的,但是要获取窗口标题什么的,有点无措阿....
{:face (396):}
**** Hidden Message *****

cxlater 发表于 2016-11-30 15:09:20

最好有网址

cashiba 发表于 2016-12-1 18:03:12

最好有网址
cxlater 发表于 2016-11-30 15:09 http://www.autoitx.com/images/common/back.gif

比喻,如何获取这个TAB激活项地址栏里的网址呢?

cxlater 发表于 2016-12-1 21:54:51

回复 3# cashiba


   
_IEPropertyGet($oie ,"locationurl")

cashiba 发表于 2016-12-1 23:41:37

回复cashiba
cxlater 发表于 2016-12-1 21:54 http://www.autoitx.com/images/common/back.gif
谢谢指点!因为是业余时间碎片化学习,所以第一次知道还有这个_IEPropertyGet函数,又涨姿势了...
{:face (332):}

ipmitool 发表于 2016-12-2 08:08:11

挖屋~又學了一招, 感謝~

jingzhinvr 发表于 2016-12-2 09:39:05

高科技技术

cfanpc 发表于 2016-12-4 09:13:26

请将帖子编辑为已解决

cashiba 发表于 2016-12-4 10:35:18

本帖最后由 cashiba 于 2016-12-4 10:37 编辑

前两天没来得及测试,今天试了试,好像也没达到目的,难道写法有问题....#include <IE.au3>
Local $oIE = _IECreate()
local $CurrUrl=_IEPropertyGet($oie ,"locationurl")
MsgBox(4096,"",$CurrUrl & @CRLF,10)感觉这个函数也就是针对某具体页面的,不是针对整个浏览器的。如果一个浏览器打开若干个窗口或者若干个Tab页,想知道当前处于激活状态的页面的网址以及标题,怎么办呢呢呢.....
{:face (382):}

cxlater 发表于 2016-12-4 15:08:39

先使用 _IEAttach根据新窗口的特征获取到新窗口的对象

cashiba 发表于 2016-12-4 19:28:15

先使用 _IEAttach根据新窗口的特征获取到新窗口的对象
cxlater 发表于 2016-12-4 15:08 http://www.autoitx.com/images/common/back.gif
就是下面这个例子一样的吗?; 附加浏览器标题为 "AutoIt" , 显示网址

#include <IE.au3>
#include <MsgBoxConstants.au3>

Local $oIE = _IECreate("www.autoitscript.com")
Local $oIE1 = _IECreate("www.google.com")

$oIE = _IEAttach("AutoIt")
MsgBox($MB_SYSTEMMODAL, "The URL", _IEPropertyGet($oIE, "locationurl"))

_IEQuit($oIE)
_IEQuit($oIE1)

cashiba 发表于 2016-12-4 20:16:07


就以本论坛为例,随意切换Tab页面后,如何获取当前处于激活状态的网页的地址或标题呢?

cashiba 发表于 2016-12-4 20:20:06

使用win窗口函数,得到的不是浏览器窗口....Local $CurrTit = WinGetTitle("")
MsgBox(4096,"",$CurrTit,10)

cxlater 发表于 2016-12-5 10:08:24


#include <IE.au3>
$webtitle = StringReplace(WinGetTitle("") ," - Windows Internet Explorer" ,"")
$curieobj = _IEAttach($webtitle)
$cururl = _IEPropertyGet($curieobj ,"locationurl")
InputBox("" ,"" ,$cururl)

cashiba 发表于 2016-12-5 18:53:12


cxlater 发表于 2016-12-5 10:08 http://www.autoitx.com/images/common/back.gif

页: [1] 2
查看完整版本: 如何获取当前网页或激活状态的网页的地址[已解决]