Java程序或Perl脚本,用于从网页上复制文本

时间:2012-02-12 06:06:38

标签: java perl web-scraping copy-paste

特别是我想知道在java(首选)或perl中是否可以输入一个URL并让它从该页面复制文本?具体来说,我希望能够在谷歌上搜索一些东西,只需复制粘贴出现的前5个链接。没有做SEO或任何其它只是为了我正在进行的程序。

2 个答案:

答案 0 :(得分:5)

在Java上不确定(我确定这是可能的)但是对于Perl你可以尝试CPAN模块LWP / UserAgent可以轻松抓取页面

http://search.cpan.org/~gaas/libwww-perl-6.03/lib/LWP/UserAgent.pm

require LWP::UserAgent;

my $ua = LWP::UserAgent->new;
$ua->timeout(10);
$ua->env_proxy;

my $response = $ua->get('http://search.cpan.org/');

if ($response->is_success) {
 print $response->decoded_content;  # or whatever
}

上面看到你的评论,所以我想补充一下。在Perl中剥离空格很容易:

$string =~ s/\s//g;

或应用于上述代码

$response->decoded_content =~ s/\s//g;

答案 1 :(得分:1)

这绝对可以用任何一种语言来完成。请看一下java的以下内容:

http://docs.oracle.com/javase/tutorial/networking/urls/readingURL.html

来自文档:

URL oracle = new URL("http://www.oracle.com/");
BufferedReader in = new BufferedReader(
    new InputStreamReader(
    oracle.openStream()));

String inputLine;

while ((inputLine = in.readLine()) != null)
  System.out.println(inputLine);

in.close();

这将为您提供页面上的HTML。您需要根据需要进行解析,以提取您感兴趣的特定文本。