Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

How to download a range of bytes?

by Zeokat (Novice)
on Dec 26, 2007 at 22:56 UTC ( [id://659125]=perlquestion: print w/replies, xml ) Need Help??

Zeokat has asked for the wisdom of the Perl Monks concerning the following question:

7digital !exclusive! <PREMIUM | 2026>

In the crowded landscape of digital music, most consumers are familiar with giants like Spotify, Apple Music, and Amazon Music. However, behind many of these services—and thousands of niche platforms—lies a lesser-known but crucial enabler: 7digital . Unlike its B2C (business-to-consumer) rivals, 7digital operates primarily as a B2B (business-to-business) technology provider, powering the backend of some of the world’s most innovative music experiences. A Brief History: From MP3 Store to API Giant Founded in 2004 in London, 7digital initially launched as a consumer-facing MP3 store, competing directly with early iTunes. For several years, it offered a download-to-own model, selling tracks from major and independent labels. But as streaming began to eclipse downloads in the mid-2010s, 7digital recognized a pivotal shift.

The company’s journey from a failing download store to a resilient B2B API provider is a case study in successful pivoting. While financial instability remains a concern, 7digital’s deep licensing relationships and technical expertise make it an indispensable—if invisible—pillar of the digital music economy. As brands outside the music industry continue to integrate audio into their products, 7digital’s role will only grow more critical. It is, truly, the engine beneath the hood of modern music. Disclaimer: This article is based on historical and publicly available information as of 2025. For current financial or operational status, refer to 7digital’s official corporate communications. 7digital

Replies are listed 'Best First'.
Re: How to download a range of bytes?
by eserte (Deacon) on Dec 26, 2007 at 23:27 UTC
    This seems to work:
    #!/usr/bin/perl -w use strict; use LWP::UserAgent; my $ua = LWP::UserAgent->new; my $url = 'http://localhost/...'; $ua->default_headers->push_header(Range => "bytes=1000-2000"); my $response = $ua->get($url); my $content = $response->content(); warn length($content); warn $content;
    To get the current content length of the object, you can do a HEAD before and look at the content-length header.
      The code works verrrrrrry good eserte. Big thanks. But new question arrive to my head, are there any way to know if the server have the abbility of "Accept-Ranges: bytes" ?? Thanks in advance.
        Try fetching with HEAD instead of GET to view the Accept* headers without getting the content itself

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://659125]
Approved by Corion
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (2)
As of 2026-03-08 23:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.