如何使用Delphi在Windows服务中实现Web浏览器行为?

时间:2014-02-06 11:09:04

标签: delphi windows-services browser

我知道网页浏览器是一个GUI控件但是这里有一个问题:

我有一个Windows服务,我希望它从互联网上获取一个网页,让JavaScript代码被执行,然后处理该页面上的结果并保留Cookies。

有没有办法模拟Web浏览器或创建隐藏窗口并从Windows服务内部为其分配Web浏览器?

1 个答案:

答案 0 :(得分:2)

在会话0中使用GUI控件可能会失败。您可以启用允许服务与桌面交互设置。这不会导致控件在桌面上可见,但它将使服务中的交互式桌面API调用成功。这是否适合你,我无法预测。这是您在服务中从GUI控件中获取内容的最佳希望。但即使这样做也不要感到惊讶。

你应该做的是在没有GUI的情况下执行你的任务。有无头浏览器设计用于服务/守护进程。例如PhantomJS,但还有其他人。这个老问题有一组很好的链接:Headless Browser and scraping - solutions