c# – 以编程方式在浏览器中获取所选文本
作者:互联网
从我的Windows应用程序,我想检测“Internet Explorer”,Firefox和任何其他浏览器中的所选文本.
你知道我应该用什么代码来实现这个目标吗?
这个想法不是在IE中搜索文本,而是在IE中“捕获所选文本”.顺便说一句,不仅是IE,而是任何具有焦点的Windows应用程序
我能想到的一件事是模拟一个ctrl c来复制所选文本,然后读取剪贴板,但我也不喜欢这个解决方案.
我几乎肯定应该有一种方法来使用Windows API获取所选文本,我知道使用EM_GETSELTEXT,WM_GETTEXT,EM_GETSEL可能很有用,但它们不能在IE或任何其他浏览器中工作,这是我的问题….
解决方法:
这是一个相当高的命令.我认为你可能只有很少的机会通过IE实现这一点,你可以在“外部”浏览器中加载与WebBrowser控件相同的页面,并获取所选文本.据我所知,并且根据长期以来寻求做这类事情的人的建议,没有自动化模型可供C#代码访问而无需巨大的努力和风险.
你对页面有什么控制权吗?您可以考虑注入类似jQuery的东西来使用Ajax调用发布选择,并设置服务器来监听该调用.
标签:c,cross-browser,screen-scraping,html,text-extraction 来源: https://codeday.me/bug/20190705/1385625.html