我正在寻找一种比较两个网址的方法。我能做到:
URI('http://www.test.com/blabla').host
有基本名称,但这不可靠。例如:
URI('http://www.test.com/blabla').host == URI('http://test.com/blabla').host
返回false
,但它们可以是同一个网站。要使IP地址不可靠,因为如果我这样做:
IPSocket.getaddress(URI('http://hello.herokuapp.com').host) ==
IPSocket.getaddress(URI('http://test.herokuapp.com').host)
它返回true
,但它们不是同一个站点。有更可靠的方式吗?
答案 0 :(得分:2)
http://foo.com下的网站可以与http://www.foo.com下的网站相同,但由于网络服务器配置,它可能是一个完全不同的网站。它还取决于DNS配置,哪个IP指向www,哪个指向没有www。
如果你想比较两个网站,你需要获取内容,并比较关键部分(例如使用nokogiri)的相似之处。
现在由于侧边栏和新闻,对同一网址的两个后续请求,给出了不同的html响应。