java - 从外部获取网站内容的最佳方式

标签 java javascript html http web

有一个搜索网站,其搜索结果是由 javascript 动态生成的。因此,用户输入查询,站点会在页面上显示内容,而无需刷新。

我需要以编程方式获取这些搜索结果(例如从 Java 程序或 perl/python 脚本)。

理想情况下,我可以使用 100 个查询作为用户输入来启动我的程序,然后该程序将使用每个查询访问该网站,并在我的屏幕上吐出该网站返回的所有搜索结果。

明显的问题是该网站是javasript而不是简单的HTML,因此发送URL请求并解析结果输出是行不通的(因为该页面的源代码始终只是一堆对各种内容的引用) .js 文件)。

鉴于上述条件,我有什么选择?

最佳答案

除非搜索提供商为您提供可使用的 API(通过反向 channel 协议(protocol)或公开可用的 API),否则您所做的任何事情都可能不会持续很长时间。

您可能会不遗余力地欺骗网站,让其相信您是普通网站用户。然后,他们会对网站的工作方式做出一些微小的改变(因为他们不知道有人以你的方式使用它),突然之间你的黑客就不起作用了。一段时间后,他们可能会注意到您正在以这种方式使用它们,并检测您的使用情况并彻底阻止它。

基本上,除非他们给你一个 API,否则你本质上是在偷窃,并且应该期望得到所有应得的礼貌......没有。

为了避免你认为我在评判你,我会让你知道我是根据经验说话的;)

关于java - 从外部获取网站内容的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1040228/

相关文章:

javascript - 保存 `EditText`可见性的状态

python - 导航标题没有很好地对齐并且导航栏有点太粗了?

javascript - 自定义谷歌自定义搜索引擎。特别是更改标题字体

java - Spring boot,JVM参数太多还是刚好够用?

Java String 不变性与 String 对象实例

java - 编写 xml 时特殊字符会产生问题

javascript - 如何在鼠标悬停期间反转黑色以使其可见?

java - 删除所有项目后无法单击组合框

javascript - SAPUI5 中的过滤器即

javascript - 防止下载 HTML5 视频(右键保存)?