有一个搜索网站,它的搜索结果是由javascript动态生成的。因此,用户输入查询,站点在页面上显示内容,而不进行刷新。
我需要以编程方式获取这些搜索结果(比如从Java程序或perl/python脚本)。
因此,理想情况下,我可以使用100个查询作为用户输入启动我的程序,然后程序会在每个查询中访问该网站,并在我的屏幕上显示该网站返回的所有搜索结果。
明显的问题是,站点是用javasript而不是简单的HTML编写的,所以发送一个URL请求并解析结果输出是行不通的(因为这个页面的源代码总是一堆对各种.js文件的引用)。
考虑到上述条件,我有哪些选择?
发布于 2009-06-24 18:59:00
除非搜索提供商给你一个可以使用的API (无论是通过反向通道协议还是公开可用的协议),否则你所做的任何事情都不可能持续很长时间。
你可能会不遗余力地欺骗网站,让他们相信你是一个普通的网站用户。然后,他们会对他们的网站的工作方式做一些小的改变(因为他们不知道有人在以你的方式使用它),突然你的黑客攻击就不起作用了。过一段时间,他们可能会注意到你正在以这种方式使用它们,并检测到你的使用情况并完全阻止它。
基本上,除非他们给你一个API,否则你基本上是在偷窃,并且应该期待得到所有应得的礼貌……没有。
以免你认为我在评判你,我会让你知道我是凭经验说的;)
https://stackoverflow.com/questions/1040228
复制相似问题