Schrift
[thread]4340[/thread]

Problem mit WWW::Mechanize Modul und https Seite: Problem mit Verbindung zu https Seite

Leser: 2


<< |< 1 2 >| >> 15 Einträge, 2 Seiten
ptk
 2004-07-19 15:59
#38055 #38055
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Versuch mal trotz der Modulliste (wie hast du sie erstellt?) vorsichtshalber
Code: (dl )
perl -MCrypt::SSLeay -e1
.
ptk
 2004-07-19 18:22
#38056 #38056
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Eigentlich ist alles, was du tun musst, Crypt::SSLeay zu installieren, dann geht alles automatisch. Wenn Crypt::SSLeay nicht installiert ist, sieht es wie folgt aus:
Code: (dl )
1
2
3
4
GET https://rt.cpan.org
LWP will support https URLs if the Crypt::SSLeay module is installed.
More information at <http://www.linpro.no/lwp/libwww-perl/README.SSL>.
Exit 1

Das ist bei dir anscheinend nicht der Fall. Vielleicht benutzt du Crypt::SSLeay- oder libwww-Versionen, die Bugs haben? Bei mir tut es mit libwww 5.800 und Crypt::SSLeay 0.51 mit perl 5.8.5-to-be auf einer RedHat-8.0-Maschine.
rucksl
 2004-07-20 13:45
#38057 #38057
User since
2004-06-15
13 Artikel
BenutzerIn
[default_avatar]
ok verständlich :)

wenn die module aber alle sauber installiert sind, müsste die ssl funktionalität aber automatisch verwendet werden oder? Also ich schreib einfach ein script mit einer https anfrage anstatt http... und den rest macht der Crypt::SSLeay für mich?!


EDIT von "dummabua": Ich sitz an nem Rechner von nem Kollegen (verdammte Cookies :))\n\n

<!--EDIT|rucksl|1090316799-->
dummabua
 2004-07-19 15:53
#38058 #38058
User since
2004-07-19
6 Artikel
BenutzerIn
[default_avatar]
Hi,

jo hab ich installiert. Ich bin momentan echt verwirrt... reicht es, das SSLeay Modul nur zu usen oder muss ich einen extra https Request stellen... oder muss ich mir vielleicht den kompletten HTTP Request selber backen??? Ich bin echt ratlos...

Hast du selbst schon mal sowas gemacht? Ich hab echt schon 20 verschiedene Möglichkeiten ausprobiert. Ich komm einfach ned drauf

hier mal alle Module die drauf sind, es sollte eigentlich an nichts mangeln :rock:
Bundle-libnet-1.00
URI-1.31
IO-Socket-SSL-0.96
MIME-tools-5.411
Crypt-SSLeay-0.51
WWW-Mechanize-1.02
Net-SCP-0.07
Digest-MD5-2.33
lcwa-1.0.0
WWW-Mechanize-Shell-0.34
Net_SSLeay.pm-1.25
HTML-Parser-3.36
libwww-perl-5.800
dummabua
 2004-07-19 16:04
#38059 #38059
User since
2004-07-19
6 Artikel
BenutzerIn
[default_avatar]
is nurn "ls -la" in meinem Modul Ordner... also keine 100%ige Sicheheit dass die auch funzen, aber wie gesagt "die verfügbar sein SOLLTEN ;)"

... schon in der shell oder?

[root@itlab1 Module]# perl -MCrypt::SSLeay -e1
[root@itlab1 Module]#

is das Ergebniss...(was mir nicht wirklich was sagt...)

das Modul sollte aber funktionieren (hier ergebniss "make test")

[root@itlab Crypt-SSLeay-0.51]# make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harne
ss(0, 'blib/lib', 'blib/arch')" t/*.t


t/net_ssl........ok


t/ssl_context....ok
All tests successful.
Files=2, Tests=2, 1 wallclock secs ( 0.30 cusr + 0.03 csys = 0.33 CPU)

Oder mach ich irgendwas falsch?\n\n

<!--EDIT|dummabua|1090238893-->
Gast Gast
 2004-07-19 12:17
#38060 #38060
Hi,

ich habe folgendes Problem, ich will mich per Perl Script auftomatisch auf eine https Seite connecten und dort ein Formular ausfüllen. Dafür ist angeblich das WWW::Mechanize Modul geeignet. Ich hab mal ein Test Script geschrieben, das auf google nach dem Begriff Linux suchen soll. Das funktioniert auch wunderbar. Nun aber mein Problem. Wenn ich nun auf betreffende https Seite will, dann sagt er mir "Bad Request"

Hier mal die beiden Scripte:

Hier das Google Test Script:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
my $url = "[URL=http://www.google.de;]http://www.google.de";[/URL]
my $name = "q";
my $value = "linux";
my $button = "btnG";

use WWW::Mechanize;

my $agent = WWW::Mechanize->new(autocheck=>1);
$agent->proxy(['http', 'https'], '[URL=http://meinProxy]http://meinProxy[/URL]:8080/');

$agent->get($url);
$agent->field($name, $value);
$agent->click($button);
print $agent->content;



Und hier das Script für die https Seite, welches den Bad Request Fehler liefert:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
my $url = "[URL=https://meine-HTTPS-Seite.com;]https://meine-HTTPS-Seite.com";[/URL]
my $name = "acc";
my $name2 = "pwd";
my $value = "meinUser";
my $value2 = "meinPasswd";
my $button = "submit";

use WWW::Mechanize;
use Net::SSLeay;

my $agent = WWW::Mechanize->new(autocheck=>1);
$agent->proxy(['http', 'https'], '[URL=http://meinProxy]http://meinProxy[/URL]:8080/');

$agent->get($url);
$agent->field($name, $value);
$agent->field($name2, $value2);
$agent->click($button);
print $agent->content();


genau lautet die Fehler wie folgt:

Code: (dl )
Error GETing [URL=https://meine-HTTPS-Seite]https://meine-HTTPS-Seite[/URL]: Bad Request at ./infonet4.pl line 18


Hat einer eine Idee bzw, hat schon mal jemand was mit diesem Modul gemacht?

Bearbeitet von Crian: CODE-Tags hinzugefügt.\n\n

<!--EDIT|Crian|1090244204-->
dummabua
 2004-07-19 18:01
#38061 #38061
User since
2004-07-19
6 Artikel
BenutzerIn
[default_avatar]
OK...

bringt mir folgendes:

[root@itlab1 scripts]# GET https://meinpage.com

500 Can't connect to meinepage.com:443 (Bad hostname 'mainpage.com')

Ich denk aber ned, dass es an einem Modul scheitert, sondern daran, dass ich nicht weiss, wie ich die Module kombinieren muss. Bzw. Wie muss ich die Requests zusammenbauen. Ich bin echt am verzweifeln... Des kann doch ned so schwer sein...

Also das mit normalem http Request geht einwandfrei... ich muss es nur irgendwie schaffen dem zu sagen, dass er keinen http zugriff machen muss sondern einen https und daran scheiterts...
dummabua
 2004-07-19 18:30
#38062 #38062
User since
2004-07-19
6 Artikel
BenutzerIn
[default_avatar]
andscheinend hat libwww einen kleinen "hau" zu haben

Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
base/message-parts.t 255 65280 39 19 48.72% 21-39
base/message.t 255 65280 74 16 21.62% 59-74
Failed 2/30 test scripts, 93.33% okay. 35/730 subtests failed, 95.21% okay.
make: *** [test] Fehler 29

statistik von make test...

ich arbeit unter redhat linux 9.A mit perl v5.8.0 built for i386-linux-thread-multi

Versionen hab ich die gleichen wie du
libwww 5.800
SSLeay 0.51

Sollt ich das Modul nochmal neu ziehen?
ptk
 2004-07-19 19:18
#38063 #38063
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Hast du Live-Tests ausgeschaltet? Es sieht so aus, als ob sich in base/message*t ein paar Live-Tests eingeschlichen haben --- das kann man ignorieren.

Vielleicht gibt es den Bug nur auf Perls mit eingebauten Threads --- aber ich habe es gerade hier mit dem Original-Perl von RedHat 8.0 versucht (auch mit Threads), und hier geht es. Als letzte Moeglichkeit koenntest du dir dein eigenes Perl bauen. Die Perl-Versionen unter RedHat sind nicht immer gut gelungen :-(
ptk
 2004-07-20 12:52
#38064 #38064
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Auf die Schnelle kann ich kein WWW::Mechanize-Skript zaubern. Aber dein Problem scheint ja zu sein, dass bereits die Schicht darunter (LWP::UserAgent) keine https-Seiten verarbeiten kann.
<< |< 1 2 >| >> 15 Einträge, 2 Seiten



View all threads created 2004-07-19 15:59.