Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Auswerten von Datein bzw Quelltext [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Auswerten von Datein bzw Quelltext


 
Kangar00
14-08-2005, 23:53 
 
Hi @ all

Allso ich hab das Forum durchsucht und hab sehrviel gefunden :)
Aber ich habs trotzdem net hinbekommen :(

Allso Ich will aus einen Quelltext einer Homepage (single-city.de)
Die User rauszufiltern das hat den zweck eine Datenbank zu erstellen....


ICh hab es geschaft den quelltext soweit rauszufilltern

---->

<!--beginn4 -->
<tr valign="top" bgcolor="#EEEEEE">
<td width="6%" class="vk">Ja</td>
<td width="4%" class="vk">Ja</td>
<td width="31%" class="vk"><a href="userlink " target="_self">user</a></td>
<td width="5%" align="right" class="vk">0</td>
<td width="8%" align="center" class="vk">m</td>
<td width="5%" class="vk"><div align="center">³|</div></td>
<td width="41%" class="vk">beschreinbug</td>
</tr>
<!--beginn3 -->
<tr valign="top" bgcolor="#DDDDDD">
<td width="6%" class="vk">Ja</td>
<td width="4%" class="vk">Ja</td>
<td width="31%" class="vk"><a href="userlink2 " target="_self">user2</a></td>
<td width="5%" align="right" class="vk">15</td>
<td width="8%" align="center" class="vk">w</td>
<td width="5%" class="vk"><div align="center"></div></td>
<td width="41%" class="vk">beschreinbug</td>
</tr>
<!--beginn4 -->

---->

Das rot Makierte will ich rausfiltern (logischerweise variiren die usernamen)

Das blau Makierte sind Sachen die variiren und die ich NET brauch.


thx im vorraus :)

mfg Kangar00


PS: Diesen code benutze ich bis jeze :


<?

$url = "meine url";
$text=implode("\n",file($url));
$before="<!--beginn4 -->";
$after="<!--beginn5 -->";
$str=substr($text,strpos($text,$before)+strlen($before));
$str=substr($str,0,strpos($str,$after));
echo $str;
?>

 
Shurakai
15-08-2005, 00:05 
 
preg_match_all und reguläre ausdrücke sind dein freund... :)

P.S.: Darfst du das? Nicht jeder sieht es gerne wenn der Content gegrabbed wird...

 
Kangar00
15-08-2005, 00:09 
 
Danke ich werde es versuchen :)

Ich hab ihn net gefragt ich wollte selber nur mal gerne wissen welche user namen es am meisten gibt ... ich benutze es ja net um werbung zu verschicken oder es online zu stellen .

mfg Kangar00

 
hydrococcus
15-08-2005, 00:13 
 
6 Rechtschreibfehler
4 Ausrucksfehler

...und das ganze in 5 "Sätzen"!
Allso Ich will aus einen Quelltext einer Homepage (single-city.de)
Die User rauszufiltern das hat den zweck eine Datenbank zu erstellen....

Bei solchen Formulierungen verliert man die Lust weiterzulesen...

:goth:

 
Kangar00
15-08-2005, 00:14 
 
Ich hab es jetzt so versucht... Und es garb keinen Fehler, aber auch nicht das was ich wollte ...
Er sagte immer nur Ja Ja,ja ( das sind Textzeilen aus dem Quellcode aber net die ich wollte .... :( )


<?

$url = "meine url";
$text=implode("\n",file($url));
$before="<!--beginn4 -->";
$after="<!--beginn5 -->";
$str=substr($text,strpos($text,$before)+strlen($before));
$str=substr($str,0,strpos($str,$after));

preg_match_all("|<[^>]+>(.*)</[^>]+>|U",
"$str;",
$ausgabe, PREG_PATTERN_ORDER);
echo $ausgabe[0][0] . ", " . $ausgabe[0][1] . "\n";
echo $ausgabe[1][0] . ", " . $ausgabe[1][1] . "\n";
?>

PS : ich bin ne gerade eine Leuchte in php...

 
Shurakai
15-08-2005, 01:19 
 
Was du dort machst, ist den Inhalt zwischen zwei Tags herauszufinden. Du benötigst aber den Inhalt zwischen zwei <a>-Tags. :)

P.S.: Beim schließenden Tag würde ich eine Backreference verwenden...!

 
Kangar00
15-08-2005, 01:21 
 
Backreference ?? sorry ich kan dir net ganz folgen wie ich schon sage bin nen anfänger :(

 
ghostgambler
15-08-2005, 03:26 
 
preg_match_all('|<a[^>]* target="_self">(.*)</a>|U',
$str,
$ausgabe);
echo '<pre>' . print_r($ausgabe, true) . '</pre>';
?>
oder so...
wozu Backreferences, wenn er einmal ein paar Namen finden will? Das Thema ist doch auch so kompliziert genug :confused:

@Kangar00
brich mal die URL in deinen Posts um, hab schon wieder nen horizontalen Scrollbalken >_>

 
Kangar00
15-08-2005, 16:35 
 
Thx das funzt ja super :)

 
Kangar00
15-08-2005, 17:28 
 
Allso mien 2 pro :( ich hoffe auch da könnt ihr so gut helfen :)
Wenn ich allso das ausleseverfahren starte gibt er mir das aus :



<pre>Array
(
[0] => Array
(
[0] => <a href="0---BABY---0" target="_self">0---BABY---0</a>
[1] => <a href="0---BABY-GIRL---0" target="_self">0---BABY-GIRL---0</a>
[2] => <a href="0---BAD-BABY-LOPEZ---0" target="_self">0---BAD-BABY-LOPEZ---0</a>
[3] => <a href="0---BOSS---0" target="_self">0---BOSS---0</a>
[4] => <a href="0---CAPPUCCINO---0" target="_self">0---CAPPUCCINO---0</a>

[5] => <a href="0---CASANOVA51---0" target="_self">0---CASANOVA51---0</a>
[6] => <a href="0---CHICO-PUERTO-RICO" target="_self">0---CHICO-PUERTO-RICO</a>
[7] => <a href="0---ESMER---0" target="_self">0---ESMER---0</a>
[8] => <a href="0---ESMERBOMBA---0" target="_self">0---ESMERBOMBA---0</a>
[9] => <a href="0---GINHO" target="_self">0---GINHO</a>
[10] => <a href="0---K-U-R-D-E---0" target="_self">0---K-U-R-D-E---0</a>


)

[1] => Array
(
[0] => 0---BABY---0
[1] => 0---BABY-GIRL---0
[2] => 0---BAD-BABY-LOPEZ---0
[3] => 0---BOSS---0
[4] => 0---CAPPUCCINO---0
[5] => 0---CASANOVA51---0
[6] => 0---CHICO-PUERTO-RICO
[7] => 0---ESMER---0
[8] => 0---ESMERBOMBA---0
[9] => 0---GINHO
[10] => 0---K-U-R-D-E---0

)

)


---->


So nun zu meiner frage kann man es so konvertirern, dass es so Nacher da steht? :

$user="0---BABY---0";

$user1="0---BABY-GIRL---0";
$user2="0---BAD-BABY-LOPEZ---0";
$user3="0---BOSS---0";
$user4="0---CAPPUCCINO---0";
$user5="0---CASANOVA51---0";
$user6="0---CHICO-PUERTO-RICO";
$user7="0---ESMER---0";
$user8="0---ESMERBOMBA---0";
$user9="0---GINHO";
$user10="0---K-U-R-D-E---0";


mfg Kangar00

 
ghostgambler
15-08-2005, 17:38 
 
$user = array();
foreach ($ausgabe[1] as $value)
$user[] = $value

echo '<pre>' . print_r($user, true) . '</pre>';
das ist übrigens ein Array, ja? Wenn du's nicht kannst, lernen ist dafür unabdingar!

 
Kangar00
15-08-2005, 17:47 
 
So habs ausprobiert und es geht leider net das is der code


$url = "meine url";
$text=implode("\n",file($url));
preg_match_all('|<a[^>]* target="_self">(.*)</a>|U',
$str,
$ausgabe);
$user = array();
foreach ($ausgabe[1] as $value)
$user[] = $value
echo '<pre>' . print_r($user, true) . '</pre>';



er sagt immer Fehler in Zeile 10
(echo '<pre>' . print_r($user, true) . '</pre>';)


PS: ich hab gesagt ich bin anfänger

 
wahsaga
15-08-2005, 17:52 
 
Original geschrieben von Kangar00
$user[] = $value
und was fehlt am ende dieser zeile ...?

 
ghostgambler
15-08-2005, 18:00 
 
btw.
Original geschrieben von ghostgambler
brich mal die URL in deinen Posts um, hab schon wieder nen horizontalen Scrollbalken >_>
bitte befolgen!

 
Kangar00
15-08-2005, 18:03 
 
; :) danke


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:32 Uhr.