Welcome to the Monastery PerlMonks

### How do I determine file type based on web page response?

by agent00013 (Pilgrim)
 on Jun 22, 2001 at 19:50 UTC Need Help??
Contributed by agent00013 on Jun 22, 2001 at 19:50 UTC
Q&A  > HTTP and FTP clients

#### Description:

  $link = "http://www.something.com/picture.gif";$link2 = "http://www.something.com/index.html";
$link3 = "http://www.something.com/something/script";$link4 = "http://www.something.com/directory";
[download]
Given these fourlinks, how can I make my script recognize that one is an , one is HTML, one is a script, and one is a directory?

I don't want to use any regex for this (as I've already got some that work, but I'm looking for a simpler approach and it has difficulty working with the third and forth links. note: I don't control these links, only the script).

I know using LWP::Simple and it's head() function I can determine things like file size, etc. What module/function can I use to determine file type? (example: http/text - or whatever format is used)

 Answer: How do I determine file type based on web page response?contributed by chromatic From the LWP::Simple manpage description of get(): You will not be able to examine the response code or response headers (like 'Content-Type') when you are accessing the web using this function.  If you need that information you should use the full OO interface (see the LWP::UserAgent manpage). Using LWP::UserAgent, you'll get back something that implements HTTP::Headers, so you can just call its content_type() method.

• Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
• Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
• Read Where should I post X? if you're not absolutely sure you're posting in the right place.
• Posts may use any of the Perl Monks Approved HTML tags:
a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
• You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
 For: Use: & & < < > > [ [ ] ]
• Link using PerlMonks shortcuts! What shortcuts can I use for linking?

Create A New User
Chatterbox?
 [Corion]: LanX: What do you mean by "restart in the cmd.exe" ? [Corion]: Do you want to launch a script and keep the command prompt/console window open? [Corion]: Do you want to wait for a key press before closing the window? [LanX]: I want the command line in the history [tye]: -Mouse [Corion]: Option a) would mean launching cmd.exe /k c:\path\to\ batchfile- launching-perl- script.cmd. Option b) would be to add pause as the last line of said batch file. [LanX]: First day after holidays ... and already stressed by the fact that colleagues changed stuff without communication ... apparently I'm the only one trying to fight entropy [Corion]: LanX: The command is always in the history if you typed it in before. If you didn't type the command into the command line, it will not be there. I think there is doskey which can stuff command lines into the history LanX damns the cult of CB ;-) LanX WTF WTF WTF

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (13)
As of 2017-03-27 15:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
Should Pluto Get Its Planethood Back?

Results (320 votes). Check out past polls.