首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  C#

C#--知道了某个浏览器窗口的句柄,可以获取到里面的 HTML 吗?

  •  
  •   zhuwd · 97 天前 · 5829 次点击
    这是一个创建于 97 天前的主题,其中的信息可能已经有所发展或是发生改变。

    求大佬们指点,谢谢!

    13 回复  |  直到 2019-08-31 14:53:33 +08:00
        1
    Mithril   97 天前
    直接上 Chrome Driver 吧
        2
    zhuwd   97 天前
    @Mithril 我目前的需求是要跨进程获取 html,Chrome Driver 怕是实现不了吧
        3
    sadfQED2   97 天前 via Android   ♥ 1
    难道你是想偷偷监听别人在浏览什么?
        4
    chinvo   97 天前 via iPhone
    ((基址+偏移)+偏移)...
        5
    Mithril   97 天前
    @zhuwd 不然你以为那些 Selenium 的自动测试是怎么实现的啊,都是 WebDriver 直接通到浏览器里去啊。这本身就是浏览器自带的功能。
        7
    gamexg   97 天前
    chrome、frefox 等就不用说了,
    我记得 ie 也有接口可以控制 ie,当年内部系统要求数字证书,使用过 python 控制 ie 自动抓取内容生成报表。
    不过只有句柄的情况下能不能做到就不确定了,建议检查相关源码。
        8
    geelaw   97 天前 via iPhone
    用 Automation API
        9
    hkitdog   97 天前 via iPhone
    @Mithril 如果要读取己经在运行的 chrome 的网页内容,web driver 不可以实现吧? chrome driver 不是会打开一个全新的窗口吗
        10
    zhuwd   96 天前 via iPhone
    @Mithril 简单看了一下,selenium 可以在浏览器之前已经打开的情况下直接连接到浏览器吗……
        11
    dcalsky   96 天前
    我初中用易语言劫持 windows 的全局 socket,然后能监听 /修改浏览器的发包。c#应该也能做到吧?而且也能在 ssl 层之前拦截到,还是不错的。
        12
    mumbler   96 天前 via Android
    好恐怖
        13
    Mithril   96 天前
    @hkitdog
    @zhuwd
    它打开一个新窗口只是为了附加一些额外的启动参数。只要你的浏览器本身启动时就加了那些参数就没问题了。
    一般来说加个 remote debugging port 基本就能用了,其他的还有重定向用户数据等等,但你可以不加。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3348 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 20ms · UTC 04:16 · PVG 12:16 · LAX 20:16 · JFK 23:16
    ♥ Do have faith in what you're doing.