擅长:python、mysql、java
<p>这将适用于许多服务器(Apache等),但并不总是有效,尤其是对于动态内容,如CGI(*.php,*.CGI等):</p>
<pre><code>import urllib2
def get_part_of_url(link, start_byte, end_byte):
req = urllib2.Request(link)
req.add_header('Range', 'bytes=' + str(start_byte) + '-' + str(end_byte))
resp = urllib2.urlopen(req)
content = resp.read()
</code></pre>
<p>请注意,这种方法意味着服务器永远不必发送,也永远不会下载不需要/不需要的数据,如果您只想从一个大文件中获取少量数据,这可以节省<em>吨</em>的带宽。在</p>
<p>当它不工作时,只需在其余字节之前读取第一组字节。在</p>
<p>有关详细信息,请参见<a href="http://en.wikipedia.org/wiki/List_of_HTTP_header_fields#range-request-header" rel="nofollow">Wikipedia Article on HTTP headers</a>。在</p>