0

使用 Firefox 和 Python 中的 Mozrepl 插件,我可以:

>>> import telnetlib
>>> tn = telnetlib.Telnet(r'127.0.0.1', 4242, 5)
>>> tn.read_eager()
'\nWelcome to MozRepl.\n\n - If you get stuck at the "'
>>> tn.read_until("repl> ")
...snip...
>>> tn.write(r'alert(window.content.location.href)'+"\n")

我收到一个带有活动选项卡 URL 的警报框。但是如何将该 URL 读入 python 变量?类似的东西,tn.write(r';var zz = window.content.location.href'+ "\n")但这并没有让它进入python。

我将不胜感激。

4

2 回答 2

0

回答有点晚,但希望有用...

您只需再次从 telnet 连接读取内容,mozrepl 的输出就会出现。请务必注意返回的换行符和引用的字符串。

于 2013-10-14T23:19:57.320 回答
0

这可以使用pymozrepl模块来完成。

>>> import mozrepl
>>> repl = mozrepl.Mozrepl()
>>> 
>>> repl.execute('alert(window.content.location.href)')
>>> 
>>> #or
>>> from mozrepl.type import Raw
>>> repl.execute('alert')(Raw('window.content.location.href'))
>>> 
>>> #or
>>> repl.execute('alert')(repl.execute('window').content.location.href)
>>> 
>>> #or
>>> repl.execute('alert')(repl.execute('window.content.location.href'))
>>> 
>>> #pymozrepl module also can get javascript value.
>>> repl.execute('repl._name')
'repl'
于 2015-04-01T21:18:23.090 回答