Thread Hash in JSON finden (21 answers)
Opened by cbxk1xg at 2013-11-14 15:42

cbxk1xg
 2013-11-14 15:42
#172082 #172082
User since
2003-10-20
496 Artikel
BenutzerIn
[default_avatar]
Hallo!

Ich hab grade nen Knoten im Kopf. Ich möchte den Inhalt einen JSON Hashs in einen String schreiben.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
{
"query": {
"pages": {
"92491": {
"pageid": 92491,
"ns": 0,
"title": "Eric Clapton",
"extract": "<p><b>Eric Patrick Clapton</b>, CBE (* 30. M\u00e4rz 1945 in Surrey, England; Spitzname: <i>Slowhand</i>) ist ein englischer Blues- und Rock-Gitarrist und -S\u00e4nger. Er ist 17-facher Grammygewinner und - als einziger Musiker der Welt - dreifaches Mitglied der \u201eRock and Roll Hall of Fame\u201c. Clapton pr\u00e4gte die Entwicklung des Bluesrocks seit den 1960er Jahren wesentlich mit und gilt als einer der bedeutendsten Gitarristen.</p>"
}
}
}
}


Das blöde ist, das die Zahl 92491 immer variiert, je nach Abfrage. Bisher habe ich folgenden Schnipsel. Wie kann ich den dritten Schlüssel "dynamisch" halten?

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/perl -T
use strict;
use warnings;
use CGI::Carp qw(fatalsToBrowser);
use LWP::UserAgent;
use JSON;
use Data::Dumper;

print "Content-type: text/html; charset=utf-8\n\n";

sub GetWikipediaExtract {
my $SearchURL = $WikipediaAPI_URL."Eric Clapton";

my $ua = LWP::UserAgent->new;
$ua->timeout(1);
$ua->agent('Mozilla 123');
my $response = $ua->get($SearchURL);

        if ($response->is_success) {
        my $content = $response->decoded_content;
        $content =  &EncodeUTF8($content);

        my $json_obj = new JSON;
        my $perl_data = $json_obj->decode($content);

        my $text = $perl_data->{'query'}->{'pages'}->{'92491'}->{'extract'};

        print Dumper($extract);
        }
}

Last edited: 2013-11-14 15:47:42 +0100 (CET)

View full thread Hash in JSON finden