【问题标题】:Invoke javascript methods on a page在页面上调用 javascript 方法
【发布时间】:2012-01-17 16:56:44
【问题描述】:

有没有办法使用 C# 或 Python 等脚本语言在用户的默认网络浏览器中加载网站并继续通过代码进行交互(例如调用现有的 Javascript 方法)?使用 WinForms 时,您可以托管 Webbrowser 控件并从那里调用脚本,但仅支持 IE。有没有办法在用户的默认浏览器中做同样的事情(不一定使用 WinForms)?

更新:该网站存储在用户的机器上,不是由第三方服务器提供的。这是一个与我的 C# 程序一起动态工作的帮助页面。当用户与我的 C# 程序交互时,我希望能够在网站上执行 Javascript 方法。

【问题讨论】:

  • 默认浏览器是必需的还是只是支持多个浏览器?

标签: c# javascript python scripting browser


【解决方案1】:

您可能想查看Selenium。它可以自动与 FireFox、IE、Chrome(使用 chromedriver)和 Opera 交互。它可能不适合您的目的,因为它使用全新的精简配置文件,而不是用户的正常浏览器配置文件。

【讨论】:

    【解决方案2】:

    如果您查看 HTTP 请求标头,您可以确定发出请求的用户代理。根据该信息,您可以从服务器端编写逻辑,以便为每个检测到的用户代理字符串提供一个唯一页面。然后添加任何你想要的唯一 JavaScript 作为静态字符串,由用户代理应用程序执行。

    【讨论】:

    • 由于没有 HTTP,因此没有约定来检测应用程序的用户代理字符串。您必须询问用户他们正在使用什么应用程序,然后根据响应,将他们链接到具有文件方案的相应下一页。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-06
    相关资源
    最近更新 更多