# Problem beim holen einer PHP-Seite via HttpClient



## DocSnyder (2. Apr 2007)

Hallo,

ich möchte per Java den Inhalt einer Webseite abrufen. Diese ist eine php-Seite. Mein Problem ist, dass ich nicht das erzeugte HTML bekomme, sondern nur die ursprüngliche Seite. Leider weiß ich keine Lösung.
Die URL lautet:

http://www.zur48.de/site/content.php

der code sieht bisher so aus:


```
String strURL = "http://www.zur48.de/site/content.php";
HttpClient httpclient = new HttpClient();
GetMethod httpget = new GetMethod(strURL);
httpclient.executeMethod(httpget);
System.out.println(httpget.getResponseBodyAsString());
```

ich erhalte wie gesagt nicht die erwartete Seite mit allen erzeugten Tables für die Navigation und die Produkte usw.
Was muß ich tun, dass das der php code auch ausgeführt wird?
Ich glaube auch dass es daran liegt, dass irgendwie Cookies nicht akzeptiert werden.

Wär schön wenn mir jemand helfen könnte, bin relativ neu auf diesem Gebiet.

Micha


----------



## AlArenal (2. Apr 2007)

Das Problem ist vielmehr, das von uns dir keiner sagen kann, was du mit "ursprüngliche Seite" meinst und das hier auch keiner weiß wie das hinterlegte PHP Skript funktioniert und welche Rahmenbedingunen es benötigt.

Klar ist nur, wenn ich mit einem jungfräulichen Browser auf o.g. URL gehe, bekomme ich auch nüschts gehaltvolles angezeigt. Das wird denm HttpClient nicht anders gehen (Warum auch?).


----------



## Leroy42 (2. Apr 2007)

AlArenal hat gesagt.:
			
		

> Klar ist nur, wenn ich mit einem jungfräulichen Browser auf o.g. URL gehe, bekomme ich auch nüschts gehaltvolles angezeigt.



Was verstehst du unter _jungfräulichen Browser_?

Meines Erachtens ist doch der Server dafür verantwortlich,
bei Aufruf einer URL mit php-Endung das PHP-Programm
anzuwerfen und dessen Ausgabe zurückzusenden.

Oder meinst du, daß der PHP-Aufruf noch Parameter benötigt?  ???:L


----------



## DocSnyder (2. Apr 2007)

also als antwort erhalte ich folgendes :


```
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Zur48.de - Die Welt der Computer</title>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="expires" content="0">
<meta name="expires" content="never">
<meta http-equiv='content-language' content='de'>
<meta name="author" content="Thomas Hohm, diablo-agentur">
<meta name="publisher" content="www.diablo-agentur.de">
<meta name="copyright" content="www.diablo-agentur.de">
<meta name="date" content="2005-10-01">
<meta name="audience" content="alle">
<meta name="robots" content="index,follow">
<meta name="revisit-after" content="30 days">
<meta name="title" content="Zur48.de - Die Welt der Computer">
<meta name='description' content='Zur48.de - Die Welt der Computer'>
<meta http-equiv='imagetoolbar' content='no'>

<script language="JavaScript" src="scripts/global.js" type="text/javascript"></script>
<script language="JavaScript" src="scripts/overlib.js" type="text/javascript"></script>
<link href="styles/main.css" rel="stylesheet" type="text/css">

<script>
	var ol_fgcolor   = "#f0f0f0";
	var ol_bgcolor   = "#cc0000";
	var ol_textcolor = "#303030";
	var ol_delay     = 400;
	var ol_hauto     = 1;
	var ol_vauto     = 1;
</script>

<script>
<!--
	function swapimage(dir, name, file) {
		file = (typeof(file) == "undefined") ? name : file;
		document[name].src = (document[name].src.indexOf(file + '.png') != -1) ? 'img/' + dir + file + '_mo.png' : 'img/' + dir + file + '.png';
	}
//-->
</script>

</head>

<body onLoad="javascript:statuszeile()">

<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr> 
		<td width="10">[img]img/spacer.png[/img]</td>
		<td> 

<table width="100%" height="100%">
	<tr>
		<td align="left" valign="middle">
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
  if (navigator.cookieEnabled) cookie = "[b]Für diesen Bereich sind momentan keine Informationen verfügbar.[/b]
Bitte schaut einfach später noch einmal vorbei.";
  else cookie = "[b]Du hast die Annahme von COOKIEs deaktiviert.[/b]
Um die Inhalte der Seite darstellen zu können, muss die Annahme von COOKIEs für diese Webseite aktiviert sein.";
  document.write(cookie)
//-->
</SCRIPT>
		</td>
	</tr>
</table>
	  
		</td>
		<td width="20" align="right" valign="top">[img]img/spacer.png[/img]</td>
  </tr>
</table>

</body>
</html>
```

hier fehlt also der komplette inhalt dieser seite, also so, wie ich sie normalerweise im browser sehe, wenn ich cookies aktiviert habe. wenn ich die cookies deaktiviere, erhalte ich oben gezeigtes ergebnis. ich suche eine lösung, damit ich auf die einzelnen elemente dieser seite zugreifen kann (mittels XPATH).


----------



## Leroy42 (2. Apr 2007)

Gib doch mal den vollständigen URL zu dieser Seite,
damit wir ihn im Browser öffnen können.


----------



## AlArenal (2. Apr 2007)

Leroy42 hat gesagt.:
			
		

> AlArenal hat gesagt.:
> 
> 
> 
> ...



Einen der auf der entsprechenden Website nicht schon irgendwie angemeldet ist oder raffetückischerweise sonstige Infos der Site in Cookies & Co. enthält.



> Oder meinst du, daß der PHP-Aufruf noch Parameter benötigt?  ???:L



Meine ich.


----------



## AlArenal (2. Apr 2007)

Leroy42 hat gesagt.:
			
		

> Gib doch mal den vollständigen URL zu dieser Seite,
> damit wir ihn im Browser öffnen können.



Steht doch im Eingangspost.


----------



## Leroy42 (2. Apr 2007)

Ja und bei dessen Aufruf bekomme ich genau


			
				Server hat gesagt.:
			
		

> Für diesen Bereich sind momentan keine Informationen verfügbar.
> Bitte schaut einfach später noch einmal vorbei.



Genau das, was DocSnyder gepostet hat.

Vermutung: Er hat in seinem Browser Cookies enabled, teilt dies dem
Server in Java aber nicht mit.


----------



## stev.glasow (2. Apr 2007)

Da fehlen sicher irgendwelche Cookies oder(und) Parameter die per POST übergeben wurden. Einfach die URL aus der Adressleiste kopieren und mit java aufurufen wird da nicht ausreichen. Sie halt AlArenal-Post. Bekomme beim aufruf von http://www.zur48.de/site/content.php mit Opera(Cookies enabled) auch nur die Meldung 


> Für diesen Bereich sind momentan keine Informationen verfügbar.
> Bitte schaut einfach später noch einmal vorbei.



[edit]


> Er hat in seinem Browser Cookies enabled, teilt dies dem
> Server in Java aber nicht mit.


hab ehr die Vermutung das bei seinem Browser vorher schon Cookies durch einen anderen Aufruf gesetzt wurden und diese jetzt bei uns und seinem javaprogi fehlen. Denn den HTML-Code den er gepostet hat liefert mit Opera(Cookies enabled) auch.


----------



## AlArenal (2. Apr 2007)

@DocSnyder:

Ich nehme überhaupt mal an, dass du dein Vorhaben knicken kannst, nämlich aufgrund der rechtlichen Situation. Du kannst nicht einfach ungefragt Content fremder Seiten bei dir einbauen, zum einen wegen des Urheber-/Verwertungsrechts und zum anderen weil dem Betreiber durch Traffic-Klau u.U. Kosten entstehen.

Hättest du eine solche Erlaubnis, müsstest du wohl kaum auf solche Hackentricks zurückgreifen...


----------



## DocSnyder (2. Apr 2007)

die php seite benötigt zwar parameter, aber wenn man sie nicht "füttert", dann wird die startseite angezeigt. mir gehts darum, zugriff auf die [*] tags der linken tabelle zu bekommen, dort wo die kategorien aufgelistet sind (unter "kategorie" halt).


----------



## stev.glasow (2. Apr 2007)

DocSnyder hat gesagt.:
			
		

> die php seite benötigt zwar parameter, aber wenn man sie nicht "füttert", dann wird die startseite angezeigt.


Merke ich nix von, bekomme nur diese Meldung die auch dein Javaprogi bekommt.


----------



## DocSnyder (2. Apr 2007)

@ AlArenal : es geht nicht um content klau, sondern um datenintegration, welche teil einer studentischen arbeit ist, die website soll auch nur als beispiel dienen, da der hauptfokus auf wissenschaftlichen websites liegt, ich jedoch viele formen der datenhaltung berücksichtigen muß, und die genannte seite eben eine form darstellt (also content darstellung in form von dynamischen seiten und nicht innerhalb statischer dokumente)...
traffic wird auch nicht viel verursacht, da der parsevorgang meist nur einmalig stattfindet...


----------



## DocSnyder (2. Apr 2007)

@ stevg : ja, ich meine ja auch, wenn ich die url im browser eingebe..im java proggi funzt es nicht.


----------



## stev.glasow (2. Apr 2007)

ja, ich meine auch im Browser.
zum 3ten mal: wenn ich die url in meinen Browser eingebe (Opera(son richtiger Browser), cookies enabled) dann bekommt opera das gleiche geliefert wie dein java proggi.


----------



## DocSnyder (2. Apr 2007)

@ stevg: wenn ich die url http://www.zur48.de/site/content.php im firefox oder im IE eingebe, mit cookies enabled, dann erscheint eine produktseite, mit unterkategorien links und produktbeschreibungen, weiß nicht, warum das bei dir nicht kommt..


----------



## Wildcard (2. Apr 2007)

Bei mir kommt das auch nicht,
Hast du mal deine cookies gelöscht?


----------



## SlaterB (2. Apr 2007)

geht mal vorher auf 
http://www.zur48.de/site/main.php?page=16
dann klappt auch
http://www.zur48.de/site/content.php


(grob vermutet nach ein paar Klicks und (erst dann) positiven Ergebnis bei
http://www.zur48.de/site/content.php
)


----------



## stev.glasow (2. Apr 2007)

Die main.php wird nen cookie gesetzt haben, den die content.php dann auswertet.
Aber irgendwie versuch ich das schon die ganze Zeit zu sagen  ???:L


----------



## DocSnyder (2. Apr 2007)

achso..da liegt der hase begraben ;-) naja..muß ich mal noch ne weile basteln...bis ich das hinbekomme...

danke euch


----------

