2013-10-12 36 views
3

我正在编写一个网络爬虫程序,我正在维基百科开始测试它。但是,我注意到许多维基百科的链接都以//开头,所以从wikipedia.org到en.wikipedia.org的链接是链接到//en.wikipedia.org。这究竟是什么意思在实践中?它是否说“使用之前使用的任何方案,然后重定向到此URL?”还是意味着完全不同的东西?//在<a>标记中的意思是什么

+1

是的,它用于自动处理支持http和https的网站。它将保持当前的协议。 –

+0

可能的重复[使用前导双斜杠来继承URL中的协议有什么不利之处吗?即src =“//domain.com”](http://stackoverflow.com/questions/4659345/is-there-any-downside-for-using-a-leading-double-slash-to-inherit-the-协议-i) – leesei

+0

[url/src/href属性中的两个正斜杠]可能的重复(http://stackoverflow.com/questions/9646407/two-forward-slashes-in-a-url-src-href-属性) – vzwick

回答

2

它维护正在使用对所述网页的协议。 HTTP/HTTPS。

这对外部脚本和css标签特别有用,其中您不知道您的网站将在哪个协议下工作。

这就是为什么在谷歌图书馆(https://developers.google.com/speed/libraries/devguide#jquery)你有这样的:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 

就在写这篇我发现重复:Two forward slashes in a url/src/href attribute

看看它。

+1

这里是本地开发的主要陷阱..当从你的硬盘(*加载file:// *)查看html页面时,它将无法加载远程脚本,因为它被转换为file:// ajax.googleapis.com/... –

+0

良好的观察。我从来没有想过这件事。 –

1

是的,它将使用当前位置的方案重定向到该网址。

为了达到这个目的,这个url指向的资源必须在每个希望重定向到的方案(通常是http和https)中都可用。

1

它是protocoll相对url。它保持http或https。