home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd1.bin / zkuste / Perl / ActivePerl-5.6.0.613.msi / 䆊䌷䈹䈙䏵-䞅䞆䞀㡆䞃䄦䠥 / _dc539469e3911636bff2067898cb3d01 < prev    next >
Text File  |  2000-03-23  |  5KB  |  130 lines

  1.  
  2. <HTML>
  3. <HEAD>
  4. <TITLE>LWP::RobotUA - A class for Web Robots</TITLE>
  5. <LINK REL="stylesheet" HREF="../../../Active.css" TYPE="text/css">
  6. <LINK REV="made" HREF="mailto:">
  7. </HEAD>
  8.  
  9. <BODY>
  10. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  11. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  12. <STRONG><P CLASS=block> LWP::RobotUA - A class for Web Robots</P></STRONG>
  13. </TD></TR>
  14. </TABLE>
  15.  
  16. <A NAME="__index__"></A>
  17. <!-- INDEX BEGIN -->
  18.  
  19. <UL>
  20.  
  21.     <LI><A HREF="#name">NAME</A></LI><LI><A HREF="#supportedplatforms">SUPPORTED PLATFORMS</A></LI>
  22.  
  23.     <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
  24.     <LI><A HREF="#description">DESCRIPTION</A></LI>
  25.     <LI><A HREF="#methods">METHODS</A></LI>
  26.     <LI><A HREF="#see also">SEE ALSO</A></LI>
  27.     <LI><A HREF="#copyright">COPYRIGHT</A></LI>
  28. </UL>
  29. <!-- INDEX END -->
  30.  
  31. <HR>
  32. <P>
  33. <H1><A NAME="name">NAME</A></H1>
  34. <P>LWP::RobotUA - A class for Web Robots</P>
  35. <P>
  36. <HR>
  37. <H1><A NAME="supportedplatforms">SUPPORTED PLATFORMS</A></H1>
  38. <UL>
  39. <LI>Linux</LI>
  40. <LI>Solaris</LI>
  41. <LI>Windows</LI>
  42. </UL>
  43. <HR>
  44. <H1><A NAME="synopsis">SYNOPSIS</A></H1>
  45. <PRE>
  46.   require LWP::RobotUA;
  47.   $ua = new LWP::RobotUA 'my-robot/0.1', 'me@foo.com';
  48.   $ua->delay(10);  # be very nice, go slowly
  49.   ...
  50.   # just use it just like a normal LWP::UserAgent
  51.   $res = $ua->request($req);</PRE>
  52. <P>
  53. <HR>
  54. <H1><A NAME="description">DESCRIPTION</A></H1>
  55. <P>This class implements a user agent that is suitable for robot
  56. applications.  Robots should be nice to the servers they visit.  They
  57. should consult the <EM>/robots.txt</EM> file to ensure that they are welcomed
  58. and they should not make requests too frequently.</P>
  59. <P>But, before you consider writing a robot take a look at
  60. <URL:http://info.webcrawler.com/mak/projects/robots/robots.html>.</P>
  61. <P>When you use a <EM>LWP::RobotUA</EM> as your user agent, then you do not
  62. really have to think about these things yourself.  Just send requests
  63. as you do when you are using a normal <EM>LWP::UserAgent</EM> and this
  64. special agent will make sure you are nice.</P>
  65. <P>
  66. <HR>
  67. <H1><A NAME="methods">METHODS</A></H1>
  68. <P>The LWP::RobotUA is a sub-class of LWP::UserAgent and implements the
  69. same methods. In addition the following methods are provided:</P>
  70. <DL>
  71. <DT><STRONG><A NAME="item_new">$ua = LWP::RobotUA->new($agent_name, $from, [$rules])</A></STRONG><BR>
  72. <DD>
  73. Your robot's name and the mail address of the human responsible for
  74. the robot (i.e. you) are required by the constructor.
  75. <P>Optionally it allows you to specify the <EM>WWW::RobotRules</EM> object to
  76. use.</P>
  77. <P></P>
  78. <DT><STRONG><A NAME="item_delay">$ua-><CODE>delay([$minutes])</CODE></A></STRONG><BR>
  79. <DD>
  80. Set the minimum delay between requests to the same server.  The
  81. default is 1 minute.
  82. <P></P>
  83. <DT><STRONG><A NAME="item_use_sleep">$ua-><CODE>use_sleep([$boolean])</CODE></A></STRONG><BR>
  84. <DD>
  85. Get/set a value indicating whether the UA should <A HREF="../../../lib/Pod/perlfunc.html#item_sleep"><CODE>sleep()</CODE></A> if requests
  86. arrive too fast (before $ua->delay minutes has passed).  The default is
  87. TRUE.  If this value is FALSE then an internal SERVICE_UNAVAILABLE
  88. response will be generated.  It will have an Retry-After header that
  89. indicates when it is OK to send another request to this server.
  90. <P></P>
  91. <DT><STRONG><A NAME="item_rules">$ua-><CODE>rules([$rules])</CODE></A></STRONG><BR>
  92. <DD>
  93. Set/get which <EM>WWW::RobotRules</EM> object to use.
  94. <P></P>
  95. <DT><STRONG><A NAME="item_no_visits">$ua-><CODE>no_visits($netloc)</CODE></A></STRONG><BR>
  96. <DD>
  97. Returns the number of documents fetched from this server host. Yes I
  98. know, this method should probably have been named <CODE>num_visits()</CODE> or
  99. something like that. :-(
  100. <P></P>
  101. <DT><STRONG><A NAME="item_host_wait">$ua-><CODE>host_wait($netloc)</CODE></A></STRONG><BR>
  102. <DD>
  103. Returns the number of seconds (from now) you must wait before you can
  104. make a new request to this host.
  105. <P></P>
  106. <DT><STRONG><A NAME="item_as_string">$ua->as_string</A></STRONG><BR>
  107. <DD>
  108. Returns a string that describes the state of the UA.
  109. Mainly useful for debugging.
  110. <P></P></DL>
  111. <P>
  112. <HR>
  113. <H1><A NAME="see also">SEE ALSO</A></H1>
  114. <P><A HREF="../../../site/lib/LWP/UserAgent.html">the LWP::UserAgent manpage</A>, <A HREF="../../../site/lib/WWW/RobotRules.html">the WWW::RobotRules manpage</A></P>
  115. <P>
  116. <HR>
  117. <H1><A NAME="copyright">COPYRIGHT</A></H1>
  118. <P>Copyright 1996-1997 Gisle Aas.</P>
  119. <P>This library is free software; you can redistribute it and/or
  120. modify it under the same terms as Perl itself.</P>
  121. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  122. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  123. <STRONG><P CLASS=block> LWP::RobotUA - A class for Web Robots</P></STRONG>
  124. </TD></TR>
  125. </TABLE>
  126.  
  127. </BODY>
  128.  
  129. </HTML>
  130.