⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mktemplate

📁 harvest是一个下载html网页得机器人
💻
字号:
: # *-*-perl-*-*    eval 'exec perl -S $0 "$@"'    if $running_under_some_shell;  ##  mktemplate - Converts an easy-to-write template into a SOIF template.#               Not very robust.##  Usage: mktemplate [file ...]##  Input format: ##      @FILE { url#      Attribute-Name-1:\tDATA#      Attribute-Name-2:\tDATA#      ...#      Attribute-Name-n:\tDATA#      }##  The Attributes must begin in column 0 and have one tab after the colon.#  And the DATA must be on a single line.##  Darren Hardy, hardy@cs.colorado.edu, May 1994##########################################################################  Copyright (c) 1994, 1995.  All rights reserved.#  #    The Harvest software was developed by the Internet Research Task#    Force Research Group on Resource Discovery (IRTF-RD):#  #          Mic Bowman of Transarc Corporation.#          Peter Danzig of the University of Southern California.#          Darren R. Hardy of the University of Colorado at Boulder.#          Udi Manber of the University of Arizona.#          Michael F. Schwartz of the University of Colorado at Boulder.#          Duane Wessels of the University of Colorado at Boulder.#  #    This copyright notice applies to software in the Harvest#    ``src/'' directory only.  Users should consult the individual#    copyright notices in the ``components/'' subdirectories for#    copyright information about other software bundled with the#    Harvest source code distribution.#  #  TERMS OF USE#    #    The Harvest software may be used and re-distributed without#    charge, provided that the software origin and research team are#    cited in any use of the system.  Most commonly this is#    accomplished by including a link to the Harvest Home Page#    (http://harvest.cs.colorado.edu/) from the query page of any#    Broker you deploy, as well as in the query result pages.  These#    links are generated automatically by the standard Broker#    software distribution.#    #    The Harvest software is provided ``as is'', without express or#    implied warranty, and with no support nor obligation to assist#    in its use, correction, modification or enhancement.  We assume#    no liability with respect to the infringement of copyrights,#    trade secrets, or any patents, and are not responsible for#    consequential damages.  Proper use of the Harvest software is#    entirely the responsibility of the user.#  #  DERIVATIVE WORKS#  #    Users may make derivative works from the Harvest software, subject #    to the following constraints:#  #      - You must include the above copyright notice and these #        accompanying paragraphs in all forms of derivative works, #        and any documentation and other materials related to such #        distribution and use acknowledge that the software was #        developed at the above institutions.#  #      - You must notify IRTF-RD regarding your distribution of #        the derivative work.#  #      - You must clearly notify users that your are distributing #        a modified version and not the original Harvest software.#  #      - Any derivative product is also subject to these copyright #        and use restrictions.#  #    Note that the Harvest software is NOT in the public domain.  We#    retain copyright, as specified above.#  #  HISTORY OF FREE SOFTWARE STATUS#  #    Originally we required sites to license the software in cases#    where they were going to build commercial products/services#    around Harvest.  In June 1995 we changed this policy.  We now#    allow people to use the core Harvest software (the code found in#    the Harvest ``src/'' directory) for free.  We made this change#    in the interest of encouraging the widest possible deployment of#    the technology.  The Harvest software is really a reference#    implementation of a set of protocols and formats, some of which#    we intend to standardize.  We encourage commercial#    re-implementations of code complying to this set of standards.  #  ########################################################################while (<>) {	next if (/^\n/o);	&print_template() if (/^}/o);	$top_line = $_ if (/^\@\w+/o);	&grab_av($_) if (/^\w+/o);}sub grab_av {	local($line) = @_;	$attribute = $1, $data = $2 if ($line =~ /^([^:]*):\t(.*)$/o);	$attribute =~ s/\{\d+\}//;	# remove length if present	$values{$attribute} = $data;}sub print_template {	print $top_line;	foreach $k (sort keys %values) {		next if (length($values{$k}) < 1);		print $k, "{" , length($values{$k}) , "}:\t";		print "$values{$k}\n";	}	print "}\n\n";	undef $top_line;	foreach $k (sort keys %values) {		undef $values{$k};	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -