Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.

oixio

Senior Schreiberling

  • "oixio" is male
  • "oixio" started this thread

Posts: 517

Date of registration: Oct 3rd 2004

1

Tuesday, May 16th 2006, 6:19pm

Letzte Forenbeiträge als RSS - hier im Inf-Forum

Hallo,

da ich ja nun schon fleissig den Mensa-Feed nutze, habe ich mich neulich gefragt, warum es noch keinen Feed der letzten Forenpostings gibt.

Es gibt doch sicherlich ein Addon/Plugin/Option fürs Burning Board um so etwas anzubieten. Oder spricht irgendetwas dagegen? Ich habe auch mit der Forensuchfunktion nichts gefunden, dass das schonmal zur Diskussion stand, oder täusche ich mich?


Und anders in die Runde gefragt: Hat noch jemand daran interesse?
Dieser Post wurde aus 100 % chlorfrei gebleichten, handelsüblichen, freilaufenden, glücklichen Elektronen erzeugt!

Rick

Mädchen

  • "Rick" is male

Posts: 1,266

Date of registration: Mar 17th 2004

Location: ::1/128

Occupation: Forentroll

2

Tuesday, May 16th 2006, 6:22pm

naja, da hier eh nicht soo viel gepostet wird, wär das wohl ganz interessant...

Sometimes you've got to ask yourself: Is xkcd shitty today?

heyho

Praktikant

  • "heyho" is male

Posts: 16

Date of registration: Oct 29th 2005

Occupation: Master Informatik, 1. Sem.

3

Tuesday, May 16th 2006, 6:28pm

RE: Letzte Forenbeiträge als RSS - hier im Inf-Forum

Das hätte ich auch gerne!

q_2

Junior Schreiberling

Posts: 134

Date of registration: Oct 25th 2004

4

Tuesday, May 16th 2006, 6:57pm

Feeds wären schön, dann müsste man diese Seite auch nicht mehr abklappern.

Ich habe ein Skript geschrieben, dass alle zugänglichen Beiträge in den Newsserver umleitet. So kann man auch mit nur einem Programm auskommen.

Ansonsten empfehle ich eben stark Newsserver. Foren sind ja nur ein Rückschritt in dieser Hinsicht, denn zuerst gab es ja das Usenet und "PN" waren noch die guten alten Emails.

(Wenn ich einen "VIEW" auf die Daten der Datenbank bekomme, dann kann ich evtl. solch einen RSS Service anbieten.)
1001 PHP-Klickibunti-made-by-Script-kiddies-Foren sind nicht nur Qual sondern auch Rückschritt!

ktm

Erfahrener Schreiberling

5

Tuesday, May 16th 2006, 7:17pm

Also mir persönlich reicht der "Neue Posts zeigen"-Link links oben auf der Forenübersicht - einmal täglich aufgerufen, und wenn nix los ist direkt wieder weg. Aber wenn jemand zuviel Freizeit hat - schaden kann noch ein(e) Newsfeed sicherlich auch nicht.

q_2

Junior Schreiberling

Posts: 134

Date of registration: Oct 25th 2004

6

Wednesday, May 17th 2006, 11:38am

Quoted

Original von ktm
Also mir persönlich reicht der "Neue Posts zeigen"-Link links oben auf der Forenübersicht - einmal täglich aufgerufen, und wenn nix los ist direkt wieder weg. [...]


Stimmt, geht schnell. Aber du musst trotzdem die Seite ansteuern. Und wenn du mehr als nur diese eine hast, dann läppert es sich schon zu ein paar lästigen Klicks/Minuten. Mal ganz davon abgesehen, dass aus jemandes sich hier auch mal trotz Beiträgen nichts interessantes los sein könnte.

Oixio spielt hingegen auf den Vorteil an, sich einfach seine Informationsquellen in einem sg. Aggregator einzutragen und nur diesen mal eben kurz aufzurufen. Schon hat die lästige Arbeit ein Programm übernommen.

Also, wie schaut's aus? Wird es RSS Feeds geben? Wie steht ihr zu den Vorschlägen?
1001 PHP-Klickibunti-made-by-Script-kiddies-Foren sind nicht nur Qual sondern auch Rückschritt!

migu

free rider

  • "migu" is male

Posts: 2,643

Date of registration: Dec 11th 2001

Occupation: Developer

7

Wednesday, May 17th 2006, 4:01pm

Quoted

Original von q_2
Also, wie schaut's aus? Wird es RSS Feeds geben? Wie steht ihr zu den Vorschlägen?
Ich halte davon viel!
Newsfeeds sind eine sehr praktische Sache, die ich sehr gerne nutze.

Einige Blogs lese ich zum Beipiel nur im Thunderbird. Blogs, die nicht den ganzen Text im Feed liefern, meide ich eher, denn da habe ich wieder dick HTML zu laden. (Das dann zwar auch im Feed-Client, aber schön ist das nicht.)
tar: Anlegen eines leeren Archivs wird feige verweigert.

oixio

Senior Schreiberling

  • "oixio" is male
  • "oixio" started this thread

Posts: 517

Date of registration: Oct 3rd 2004

8

Wednesday, May 17th 2006, 5:26pm

Habe grad mal nen bischen gesucht - und wie es scheint gibt es im WBB keinen Standart-Feed als Option. Scheint also auf einen Hack hinauszulaufen. Ich habe nur folgenden gefunden:RSS Feed for WBB.

Allerdings kann ich dazu nichts sagen, da ich weder ein WBB zum testen habe noch groß Testberichte dazu gelesen habe. Aber vielleicht hilfts weiter..

Gruß,

oixio
Dieser Post wurde aus 100 % chlorfrei gebleichten, handelsüblichen, freilaufenden, glücklichen Elektronen erzeugt!

maffe

Unregistered

9

Wednesday, May 17th 2006, 9:21pm

Quoted

Original von oixio
Standart-Feed


Siehe auch
http://standart.de.gg/
http://www.k-faktor.com/standart/
;)

Benjamin

Segelnder Alter Hase

  • "Benjamin" is male

Posts: 3,827

Date of registration: Oct 1st 2002

Location: Region Hannover

Occupation: Alumni

10

Wednesday, May 17th 2006, 9:44pm

Ich bin der Meinung wir hatten das Thema schoneinmal und da ist es im Sand verebbt. Also es gibt kein offizielles Feature richtung RSS von Woltlab. Ein Hack ist so eine Sache.. denn den müsste man bei jeder neuen Version wieder einbauen. Dazu bräuchten wir einen dafür engagierten Admin, wenn wir das machen würden.

Es steht aber jedem Frei ein Skript zu schreiben, dass aus den aktiven Themen der letzten 24h oder anderen Standardseiten einen RSS-Feed erstellt. Wenn es um Direktzugriff auf die DB geht, müsste man mal gucken.

Aber erstmal müsste das jemand wirklich aktiv machen und auch pflegen wollen. Freiwillige vor.
Es gibt nur eine bessere Sache als auf dem Wasser zu sein: Noch mehr auf dem Wasser sein.

q_2

Junior Schreiberling

Posts: 134

Date of registration: Oct 25th 2004

11

Wednesday, May 17th 2006, 10:22pm

Quoted

Original von metalhen
[...]
Es steht aber jedem Frei ein Skript zu schreiben, dass aus den aktiven Themen der letzten 24h oder anderen Standardseiten einen RSS-Feed erstellt. Wenn es um Direktzugriff auf die DB geht, müsste man mal gucken.[...]


Der Link führt zu der Meldung: "Ihnen wird der Zutritt zu dieser Seite verwehrt."

Quoted

Original von metalhen
Aber erstmal müsste das jemand wirklich aktiv machen und auch pflegen wollen. Freiwillige vor.


Mit DB Zugang habt ihr einen Freiwilligen. Ich möchte aber nicht alle Daten lesen, weswegen ein beschränkter Zugang (Stichwort View) voll ausreichen würde.
Das mit der Pflege siehst du zu eng. Bei den WBBs hat sich seit Jahren nicht viel geändert.

Bei Interesse: Email.
Bedingung: Ich darf bis auf das Kennwort der DB alles veröffentlichen und einen Mirror für den Feed aufmachen.
1001 PHP-Klickibunti-made-by-Script-kiddies-Foren sind nicht nur Qual sondern auch Rückschritt!

Benjamin

Segelnder Alter Hase

  • "Benjamin" is male

Posts: 3,827

Date of registration: Oct 1st 2002

Location: Region Hannover

Occupation: Alumni

12

Wednesday, May 17th 2006, 11:06pm

Nun sollte der Link funktionieren.

Wie das mit dem Zugriff auf die DB aussieht, müsste man mit unseren Admins usw. absprechen. Entweder vielleicht einen Lese-Account und Zugriff von anderem Host vorrübergehend erlauben oder woanders entwickeln und einer der Zugriff hat installiert es dann. Oder nen DB-Dump zum entwickeln. Der ssh-Zugang zu unserem Server ist sehr restriktiv geregelt, was ja auch normal und verständlich ist.
Es gibt nur eine bessere Sache als auf dem Wasser zu sein: Noch mehr auf dem Wasser sein.

oixio

Senior Schreiberling

  • "oixio" is male
  • "oixio" started this thread

Posts: 517

Date of registration: Oct 3rd 2004

13

Tuesday, June 6th 2006, 11:44am

Quoted

Original von metalhen

Es steht aber jedem Frei ein Skript zu schreiben, dass aus den aktiven Themen der letzten 24h oder anderen Standardseiten einen RSS-Feed erstellt.


Dazu habe ich grade was gefunden und auch erfolgreich ausprobiert:
feed43.com. Mit Hilfe dieser Seite kann man aus einer beliebigen Homepage einen RSS-Feed basteln. Man muss dazu die entsprechenden Such-Pattern eingeben und dann sagen wie die im Feed auftauchen sollen und fertig.

Das Ergebnis sieht so aus:
Aktive Beiträge der letzten 24h - Feed

Nachteile:
- Werbung wird zu jedem Item hinzugefügt
- Aktualisierung nur alle 6 Stunden (<-- leider viel zu wenig)
- nur für persönlichen Gebrauch
- in den Links taucht immer eine Session-ID mit auf

ABER: nun habe ich schon mal die entsprechenden Suchpattern. Vielleicht möchte die jemand in ein eigenes Skript (mit Hilfe von Regulären Ausdrücken und einer PHP-RSSWriter-Klasse oder so?) umsetzen und das dann der Fachschaft zur Verfügung stellen?

Dafür hier der Link, wo man den Feed(incl. Pattern) auf feed43.com ansehen und editieren kann: Edit-Link
(Einfach auf "Reload" klicken, der Rest erscheint unten dann, ist ne Ajax-Oberfläche)

Gruß,

oixio


PS: Ich wäre an dem entsprechenden Skript auch sehr interessiert, das kann ja auch für andere Seiten nützlich sein, z.B. Heise, die ja in ihrem Feed leider die Kurzbeschreibung nicht mitsenden.

PPS: Wenn sich gar keiner findet, kann ich mich ja auch mal dran versuchen, aber vielleicht findet sich ja jemand, der im Moment mehr Zeit übrig hat...
Dieser Post wurde aus 100 % chlorfrei gebleichten, handelsüblichen, freilaufenden, glücklichen Elektronen erzeugt!

maffe

Unregistered

14

Tuesday, June 6th 2006, 4:18pm

http://rssgenerator.plech.net/
Ähnlich wie Feed43, wie das mit der Aktualisierung und so ausschaut, weiß ich nicht. Vielleicht kannst du das ja mal mit deinem Suchmuster testen :)

Eigentlich müsste man mit einem regulären Ausdruck auch die Session-ID verwerfen können.

ktm

Erfahrener Schreiberling

15

Wednesday, June 7th 2006, 9:23pm

Quoted

Original von maffe
Eigentlich müsste man mit einem regulären Ausdruck auch die Session-ID verwerfen können.

Wenn nicht nur match- sondern auch substitute-Ausdrücke gehen, sollte es das tun:

Source code

1
s/&amp;sid=[0-9a-f]{32}//

Falls der/die/das Ampersand im Original nicht HTML-codiert ist, bitte enstprechend anpassen.

maffe

Unregistered

16

Thursday, June 8th 2006, 1:50am

Na ich dachte eher an sowas:
href="(/foo.php\?topic=12345)&amp;sid=[0-9a-f]{32}"
… dass also nur der relevante Teil extrahiert wird. Hab mich allerdings nicht so sehr genau damit auseinandergesetzt :)

oixio

Senior Schreiberling

  • "oixio" is male
  • "oixio" started this thread

Posts: 517

Date of registration: Oct 3rd 2004

17

Thursday, June 8th 2006, 9:44am

Habe da gestern schon was zusammengebastelt, ist allerdings ne ziehmlich lange RegExp. geworden. Das was letztenandes rauskommt sieht dann so aus:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="ISO-8859-1"?><rss version="2.0">
 <channel>
 <title>Fachrat Informatik Forum</title>
 <link>http://forum.finf.uni-hannover.de/</link>
 <description><![CDATA[Fachrat Informatik - Aktive Themen der letzten 24h]]></description>
 <lastBuildDate>Thu, 08 Jun 2006 09:15:31 +0200</lastBuildDate>
 <generator>WBBLast24h-2-RSS</generator>

<item><title>Sql 7</title><link>http://forum.finf.uni-hannover.de/thread.php?threadid=4813&amp;goto=lastpost</link><description><![CDATA[Forum: Informatik und Informationstechnik (A-Katalog) - Letzter Beitrag: <b>Heute</b>, 08:57h von CrissCross]]></description></item>
<item><title>Algebra alt Klausur</title><link>http://forum.finf.uni-hannover.de/thread.php?threadid=4814&amp;goto=lastpost</link><description><![CDATA[Forum: Mathematik - Letzter Beitrag: <b>Heute</b>, 08:23h von JoachimH]]></description></item>
<item><title>Letzte Forenbeiträge als RSS - hier im Inf-Forum</title><link>http://forum.finf.uni-hannover.de/thread.php?threadid=4766&amp;goto=lastpost</link><description><![CDATA[Forum: Tech Talk - Letzter Beitrag: <b>Heute</b>, 01:50h von maffe]]></description></item>
<item><title>Wie Sinnvoll ist StudIP???</title><link>http://forum.finf.uni-hannover.de/thread.php?threadid=4815&amp;goto=lastpost</link><description><![CDATA[Forum: Smalltalk - Letzter Beitrag: Gestern, 22:35h von Torrero]]></description></item>
 

</channel></rss>


Was haltet ihr davon? Wie gesagt - so ganz optimal ist das noch nicht, aber schon mal ein Anfang. Die sid filtert die RegExp. gleich mit raus.

Würdet ihr z.B. den Feed anders zusammensetzen? Zur Verfügung stehen alle Elemente, die hier in der Tabelle auftauchen - sprich Topictitel, Forum, Antworten(gut die hab ich mit der RegExp. noch nicht rausgefischt), Autor, Hits, Letzter Beitragszeit, und -Autor und die links zum Forum, zum letzten Beitrag und zum Topic.
Dieser Post wurde aus 100 % chlorfrei gebleichten, handelsüblichen, freilaufenden, glücklichen Elektronen erzeugt!

oixio

Senior Schreiberling

  • "oixio" is male
  • "oixio" started this thread

Posts: 517

Date of registration: Oct 3rd 2004

18

Saturday, June 10th 2006, 1:03pm

Quelltext

So, dann will ich euch(<- vor allem unserm Fachrat) mal den Quelltext zur verfügung stellen:

Source code

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php
/**
* WBBLast24h-2-RSS
* by oixio
*/
header('Content-type: application/xml');
echo '<?xml version="1.0" encoding="ISO-8859-1"?><rss version="2.0">
 <channel>
 <title>Fachrat Informatik Forum</title>
 <link>http://forum.finf.uni-hannover.de/</link>
 <description><![CDATA[Fachrat Informatik - Aktive Themen der letzten 24h]]></description>
 <lastBuildDate>';
echo date('r');
echo '</lastBuildDate>
 <generator>WBBLast24h-2-RSS</generator>' . "\n";

require_once('./HTTPRequest.php');

$r = new HTTPRequest('http://forum.finf.uni-hannover.de/search.php?action=24h');
$rresult = $r->DownloadToString();

if ($r->_error == 302) {
	
	$location = explode ( "&", $r->_headers['location']);
	$r = new HTTPRequest ('http://' . $r->_host . '/' . $location[0]);
	$rresult = $r->DownloadToString();
}

$regexp = '/<\/span>\n  <a href="(.*?)(&amp;sid=.*)?">(.*?)<\/a><\/span>.*(\n.*){4}<br \/>Forum: <b><a href="(.*?)(&amp;sid=.*)?">(.*?)<\/a><\/b>\n.*<\/span><\/td>(\n.*){3}href=".*">(.*?)<\/a>.*(\n.*){5}<span class="smallfont">(.*?)<span class="time">(.*?)<\/span><br \/>\n.*href=".*">(.*?)<\/a>.*\n.*href="(.*?)(&amp;sid=.*)?">/mi';


$success = preg_match_all ( $regexp, $rresult, $regresult );

if ($success === false) {echo "Fehler bei RegExp";}

for ($i = 0; $i < count($regresult[0]); $i++){
	$titel = html_entity_decode($regresult[3][$i]);
	$link = "http://forum.finf.uni-hannover.de/" . $regresult[14][$i];
	$description = "Forum: " . $regresult[7][$i] . " - Letzter Beitrag: " . $regresult[11][$i] . $regresult[12][$i] . "h von " . $regresult[13][$i];
	
	echo "<item>";
	echo "<title>$titel</title>";
	echo "<link>$link</link>";
	echo "<description><![CDATA[$description]]></description>";
	echo "</item>\n";
}

?> 
</channel></rss>


Hinweise:
a) ich hab nichts kommentiert ;-)
b) die HTTPRequest-Class liefer ich nicht mit, die ist bei nur deshalb nötig, da mein Server kein öffnen von URLS unterstützt. Der Teil danach hat den Grund: da der Link http://forum.finf.uni-hannover.de/search.php?action=24h dann auf eine andere Seite weitergeleitet wird und ich dann einen neuen request für die Seite im Header aufbaue. Das macht die HTTPRequest-Class eigentlich automatisch - nur leider geht da was scheif, weil bei der Weiterleitung eine sid mit angegebn wird, die beim internen 2. Request ne Fehlermeldung erzeugt. So funktioniert es auf jeden Fall.
Das sollte einfacher gehen, wenns aufm gleichen Server ist
c) dann kommt der Reguläre Ausdruck. Hier bin ich für Optimierungsvorschläge dankbar, das ist erstmal so hingeschrieben (aber funktioniert zumindestens ;) )
d) naja - der Rest sollte klar sein. Die passenden Felder aus dem Array suchen und als RSS verpacken.
e) Ne wirkliche Fehlerbehandlung steckt auch nicht drin.

Ergebnis siehe vorherigen Post

Viel Spaß!

oixio

PS: Wenn jemand was verbessert oder sonstwie verändert würde ich über eine Nachricht freuen. Achja - und wäre schon wenn der Kommentar im Quelltext bleibt.
PPS: Ich selber verpacke das für mich gar nicht mehr in einen Feed. Denn ich wollte das sowieso mit PHP weiterverarbeiten und dann wäre es schwachsinn das zu verpacken und dann wieder zu parsen ;)

EDIT: $regexp angepasst - hatte den Fall nicht beachtet, dass Threads mehrere Seiten haben. Ist gefixt.
Dieser Post wurde aus 100 % chlorfrei gebleichten, handelsüblichen, freilaufenden, glücklichen Elektronen erzeugt!

This post has been edited 1 times, last edit by "oixio" (Jun 12th 2006, 1:47pm)