Schrift
[thread]2992[/thread]

LWP::Simple: probleme bei get()

Leser: 2


<< >> 6 Einträge, 1 Seite
renee
 2005-05-04 18:04
#28333 #28333
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Bist Du Dir sicher, dass Du die AccessionNumber richtig ausliest?? Meiner Zählung nach hat die nämlich neun Zeichen... Ich würde die AC so bestimmen:
Code: (dl )
$accession = (split(/\s/,$_))[0];
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
LordChaos
 2005-05-04 18:28
#28334 #28334
User since
2005-05-04
8 Artikel
BenutzerIn
[default_avatar]
Hm, verflucht, die hier hat tatsaechlich um eins laenger (Eine unter 100 000...). Danke fuer den Tip, kann es im Moment leider nicht auspropieren, es scheint beim NCBI tatsaelich eine Beschraenkung zu geben...

Your access to the NCBI website at www.ncbi.nlm.nih.gov has been temporarily blocked due to a possible misuse situation involving your site. To restore access, please have your system administrator contact info@ncbi.nlm.nih.gov as soon as possible with the information below.

Denke aber mal das es daran gelegen hat, dank dir!

Thomas
LordChaos
 2005-05-06 12:40
#28335 #28335
User since
2005-05-04
8 Artikel
BenutzerIn
[default_avatar]
Das komplette Unternehmen IST gesperrt... :cool:
Gott sei dank kam die Anweisung es auf die Art zu machen von meinem Chef, ich wollte mir die komplette Genbank per ftp ziehen und dann parsen...In solchen Momenten liebe ich die Befehlskette :D
@pKai: ja, den Strich hab ich vergessen, hab die RegEx kurz vorher etwas uebersichtlicher geschrieben, da wohl den Strich uebersehen. Danke auch an dich! Was man bei dem Inputfile nicht sieht: die erste Stelle ist ein blank, deshalb hatte ich substr($_,1,8) hab aber jetzt sowieso die regex von Renee genommen, wer weiss was da noch an anderen Formaten kommt.\n\n

<!--EDIT|LordChaos|1115369007-->
LordChaos
 2005-05-04 17:55
#28336 #28336
User since
2005-05-04
8 Artikel
BenutzerIn
[default_avatar]
Hallo da draussen...

Folgendes Programm  funktioniert bei mir aus unerfindlichen Gruenden nicht:
Code: (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
#!/usr/bin/perl -w
use strict;
use LWP::Simple;

my $filename = $ARGV[0];
my ($url,$entry,$accession);

open INPUT, "<$filename" or die "Failed to open input file\nError:$!\n";
open OUTPUT, ">$filename.entries" or die "Failed to open result file\nError:$!\n";
open STDERR, ">>$filename.web.errorlog" or die "Failed to open error log\nError:$!\n";

while (<INPUT>){
       next if ($_ =~ /^-/ || $_ =~ /^\(/ || $_ =~ /\brzpd\b/ || $ =~ /^\n/);

       $accession = substr($_,1,8);

       $url = "http://www.ncbi.nlm.nih.gov/entrez/viewer.fcgi?db=nucleotide&qty=1&c_start=1&list_uids=$accession&dopt=gb&send=Send&sendto=t&from=begin&to=end&extrafeatpresent=1&ef_MGC=16;";

       $entry = get $url; warn "Couldn't get $url" unless defined $entry;
       print OUTPUT $entry;
}

close (STDERR) or die "Failed to close error log\nError:$!\n";;
close (OUTPUT) or die "Failed closing output file\nError:$!\n";
close (INPUT) or die "Failed closing input file\nError:$!\n";


Input file sieht so aus:          

             rzpd
--------------------------
NM_000639      RZPDp464G0811D
(1 row)

Das Programm bekommt ein sql statement (ca. 30 000 Eintraege pro statement) uebergeben und soll die dazugehoergien Eintraege von der ncbi homepage laden. Diese werden dann in einer Datei gespeichert.

Als Resultat bekomme ich eine leere Zeile in der Output Datei.
Benoetigte Nummer (NM_000639) wird richtig ausgeschnitten, es funktioniert auch wenn ich die URL (mit aufgeloestem Skalar)in den Browser kopiere:

http://www.ncbi.nlm.nih.gov/entrez...._MGC=16

Was mich am meisten verwirrt ist das es ca. 120 000 mal funktioinert, nur bei dieser Nummer nicht.

Bin fuer jeden Tipp dankbar, hoffe der Fehler ist nicht zu peinlich einfach... ;)
Danke, Thomas

renee: ne Runde [code]-Tags spendiert\n\n

<!--EDIT|renee|1115215328-->
pKai
 2005-05-04 18:26
#28337 #28337
User since
2005-02-18
357 Artikel
BenutzerIn
[default_avatar]
Syntaxfehler in next-Zeile!? near "$ =~" (Unterstrich verloren gegangen?!)

Damit $accession wie in deinem Bsp-Link aussieht, müsste es
Code: (dl )
$accession = substr($_,0,9);
heißen.
I sense a soul in search of answers.
renee
 2005-05-04 21:01
#28338 #28338
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ja, am NCBI musst Du aufpassen, dass nicht auf einmal das komplette Unternehmen gesperrt ist...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 6 Einträge, 1 Seite



View all threads created 2005-05-04 18:04.