On Mon, Nov 18, 2002 at 01:26:15AM +0100, Georg Bauer wrote:
> Ok, attached another transcript, this time with the now installed
> aggregator API. It looks like I still have two problems, as this one
> doesn't have umlauts and other silly chars, but it still barfs about
> non-wellformed-ness. Looks like it get's the response in chunks and
> those are splitted at random points. It does look a bit borken,
> especially the <valu at the end, that's definitely not well-formed.
> Maybe xmlrpclib doesn't process the last line and so get's bad XML?
> Damn. Too late to dig deeper ...
I think the chunks are either HTTP/1.1 chunks or packet boundaries, so
I wouldn't worry about that. Tags can certainly be split over packet
boundaries, as long as they're all there.
> body: '<?xml
> version="1.0"?>\r\n<methodResponse>\r\n\t<params>\r\n\t\t<param>\r\n\t\t\t<
[...]
> /name>\r\t\t\t\t\t\t<value>tagesschau.de: Dieses Dokument enth\x8alt
[...]
> File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
> 390, in feed
> self._parser.Parse(data, 0)
> ExpatError: not well-formed: line 728, column 48
I'd say that the \x8a character is the problem here. Like you say,
Radio is returning Mac-encoded text in the XML response, but it looks
like it isn't specifying that: the XML document just starts with <?xml
version="1.0"?>, which means it's using UTF-8.
Looks like a Radio bug ...
Cheers,
Phil :)
Hi!
Ok, attached another transcript, this time with the now installed
aggregator API. It looks like I still have two problems, as this one
doesn't have umlauts and other silly chars, but it still barfs about
non-wellformed-ness. Looks like it get's the response in chunks and
those are splitted at random points. It does look a bit borken,
especially the <valu at the end, that's definitely not well-formed.
Maybe xmlrpclib doesn't process the last line and so get's bad XML?
Damn. Too late to dig deeper ...
And yes, I changed my remote access password after my last mail ;-)
bye, Georg
Python 2.2.2 (#138, Oct 25 2002, 23:10:42) [CW CARBON GUSI2 THREADS GC]
Type "copyright", "credits" or "license" for more information.
MacPython IDE 1.0.1
>>> import xmlrpclib
>>> srv = xmlrpclib.Server('http://localhost:5335/RPC2',verbose=1)
>>> srv.aggregator.getSubs('YYYYY','XXXXX')
connect: (localhost, 5335)
send: 'POST /RPC2 HTTP/1.0\r\nHost: localhost:5335\r\nUser-Agent:
xmlrpclib.py/1.0.0 (by www.pythonware.com)\r\nContent-Type:
text/xml\r\nContent-Length: 222\r\n\r\n'
send: "<?xml
version='1.0'?>\n<methodCall>\n<methodName>aggregator.getSubs</methodName>
\n<params>\n<param>\n<value><string>YYYYY</string></value>\n</param>\n<param>
\n<value><string>XXXXX</string></value>\n</param>\n</params>\n</methodCall>
\n"
reply: 'HTTP/1.1 200 OK\r\n'
header: Connection: close
header: Content-Length: 20793
header: Content-Type: text/xml
header: Date: Mon, 18 Nov 2002 00:18:29 GMT
header: Server: Radio UserLand/8.0.8-MacOSX
body: '<?xml
version="1.0"?>\r\n<methodResponse>\r\n\t<params>\r\n\t\t<param>\r\n\t\t\t<
value><struct>\r\t\t<member>\r\t\t\t<name>http://search.cpan.org/recent.rdf<
/name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>description</name>\r\t\t\t\t\t\t<value>The CPAN search
site</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
image</name>\r\t\t\t\t\t\t<value>\r\t\t\t\t\t\t\t<struct>\r\t\t\t\t\t\t\t\
t<member>\r\t\t\t\t\t\t\t\t\t<name>height</name>\r\t\t\t\t\t\t\t\t\t<value>
31</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\
t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t\t\t\t<value>searchDOTcpan</value>
\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\t\t\t\t\t\
t<name>url</name>\r\t\t\t\t\t\t\t\t\t<value>http://search.cpan.org/s/img/cpanrdf.
gif</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\
t\t\t\t\t\t<name>width</name>\r\t\t\t\t\t\t\t\t\t<value>88</value>\r\t\t\t\
t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t</struct>\r\t\t\t\t\t\t\t</value>\r\
t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>language</name>
\r\t\t\t\t\t\t<value>en</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>
\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://search.cpan.org<
/value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title<
/name>\r\t\t\t\t'
body:
"\t\t<value>search.cpan.org</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>
\r\t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t<value>http://search.cpan.org/
recent.rdf</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>
\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://static.userland.com/updatelogs/
Radio.xml</name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\
t\t\t\t\t<name>description</name>\r\t\t\t\t\t\t<value>Updates to
Radio.root</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\
t<name>language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>
\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http:
//radio.userland.com/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\
t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>Radio.root
Updates</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://static.userland.com/updatelogs/Radio.
xml</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\
t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://use.perl.org/useperl.rdf<
/name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>description</name>\r\t\t\t\t\t\t<value>All the Perl that's
Practical to Extract a"
body: 'nd
Report</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\t\t\
t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://use.
perl.org/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>title</name>\r\t\t\t\t\t\t<value>use
Perl</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://use.perl.org/useperl.rdf</value>\r\t\
t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.advogato.org/rss/articles.xml</name>
\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>Recent Advogato
articles</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>language</name>\r\t\t\t\t\t\t<value>en-
us</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://www.advogato.org/article/</value>\r\t\t\
t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\t\
t\t\t\t<value>Advogato</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\
t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t<value>http://www.advogato.org/rss/
articles.xml</value>\r\t\t\t\t\t\t'
body:
"</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>\r\t\t<member>
\r\t\t\t<name>http://www.cadenhead.org/workbench/rss.xml</name>\r\t\t\t<value>
\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description</name>
\r\t\t\t\t\t\t<value>Programming and publishing news and commentary by
Rogers
Cadenhead.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\
t<name>language</name>\r\t\t\t\t\t\t<value>en-
us</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://www.cadenhead.org/workbench/</value>\r\t\
t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\
t\t\t\t\t<value>Workbench</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>
\r\t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t<value>http://www.cadenhead.org/
workbench/rss.xml</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\
t\t\t</value>\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.deadlybloodyserious.
com/Radio/rss.xml</name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>
\r\t\t\t\t\t\t<name>description</name>\r\t\t\t\t\t\t<value>The more you
dig into Radio, the more you'll dig
Radio.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<va"
body: 'lue>en-
au</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://www.deadlybloodyserious.com/Radio/</value>
\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>
\r\t\t\t\t\t\t<value>Garth Kidd: Deadly Bloody Serious about Radio
UserLand</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>url</name>\r\t\t\t\t\t\t<value>http://www.deadlybloodyserious.com/Radio/
rss.xml</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>
\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.dpreview.com/news/
dpr.rdf</name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\
t\t\t\t<name>description</name>\r\t\t\t\t\t\t<value>Digital Photography
Review, Latest digital camera news, camera reviews, galleries,
technology and
comparisons</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\
t<name>image</name>\r\t\t\t\t\t\t<value>\r\t\t\t\t\t\t\t<struct>\r\t\t\t\t\
t\t\t\t<member>\r\t\t\t\t\t\t\t\t\t<name>height</name>\r\t\t\t\t\t\t\t\t\t<
value>58</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\
t\t\t\t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t\t\t\t<value>Digital
Photography Review
(dpreview.com)</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t'
body:
'\t<member>\r\t\t\t\t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t\t\t\t<value>
http://img.dpreview.com/images/dprlogo_white_free.gif</value>\r\t\t\t\t\t\
t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\t\t\t\t\t\t<name>width<
/name>\r\t\t\t\t\t\t\t\t\t<value>114</value>\r\t\t\t\t\t\t\t\t\t</member>\r\
t\t\t\t\t\t\t\t</struct>\r\t\t\t\t\t\t\t</value>\r\t\t\t\t\t\t</member>\r\
t\t\t\t\t<member>\r\t\t\t\t\t\t<name>language</name>\r\t\t\t\t\t\t<value>en-us<
/value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://www.dpreview.com/</value>\r\t\t\t\t\t\t<
/member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<
value>Digital Photography Review
(dpreview.com)</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\
t\t\t<name>url</name>\r\t\t\t\t\t\t<value>http://www.dpreview.com/news/dpr.
rdf</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\
t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.f-2.org/rdf</name>\r\
t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>F-2.org: Looking at photography the other way
around. Open your
eyes.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
image</name>\r\t\t\t\t\t\t<value>\r\t\t\t\t\t\t\t<struct>'
body:
'\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\t\t\t\t\t\t<name>height</name>\r\t\t\t\
t\t\t\t\t\t<value>\r\t\t\t\t\t\t\t\t\t\t<i4>0</i4>\r\t\t\t\t\t\t\t\t\t\t</value>
\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\t\t\t\t\t\
t<name>title</name>\r\t\t\t\t\t\t\t\t\t<value>F-2 - photography with
open
eyes</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\
t\t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t\t\t\t<value>http://www.f-2.org/
Images/sitelogo</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>
\r\t\t\t\t\t\t\t\t\t<name>width</name>\r\t\t\t\t\t\t\t\t\t<value>\r\t\t\t\
t\t\t\t\t\t\t<i4>0</i4>\r\t\t\t\t\t\t\t\t\t\t</value>\r\t\t\t\t\t\t\t\t\t<
/member>\r\t\t\t\t\t\t\t\t</struct>\r\t\t\t\t\t\t\t</value>\r\t\t\t\t\t\t<
/member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>language</name>\r\t\t\t\t\
t\t<value>en</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\
t\t<name>link</name>\r\t\t\t\t\t\t<value>http://www.f-2.org</value>\r\t\t\
t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\t\
t\t\t\t<value>F-2 - photography with open
eyes</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.f-2.org/rdf</value>\r\t\t\t\t\t\
t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>\r\t\t<member>
\r\t\t\t<name>http://www.heise.de/newsticker/heise.rdf</nam'
body:
'e>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
description</name>\r\t\t\t\t\t\t<value>Nachrichten aus der Welt des
Computers</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\
t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http:
//www.heise.de/newsticker/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>
\r\t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>heise online
news</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.heise.de/newsticker/heise.rdf</value>
\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.kuro5hin.org/backend.rdf</name>\r\t\
t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>technology and culture, from the
trenches</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\
t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http:
//www.kuro5hin.org/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\
t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<va'
body:
'lue>kuro5hin.org</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\
t\t\t\t<name>url</name>\r\t\t\t\t\t\t<value>http://www.kuro5hin.org/backend.
rdf</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\
t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.macnn.com/macnn.rdf</name>
\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>MacNN is the leading source for news from
Apple and the Mac industries. It offers news, reviews, discussion, tips,
troubleshooting, links, and reviews daily. ReadMe
First.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\t\t\
t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://www.
macnn.com/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\
t<name>title</name>\r\t\t\t\t\t\t<value>The Macintosh News
Network</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.macnn.com/macnn.rdf</value>\r\t\
t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.morons.org/morons.rss</name>\r\t\t\
t<value>'
body:
'\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description</name>
\r\t\t\t\t\t\t<value>Exposing the insanity and stupidity in the world.
Headlines and summaries may be censored here, but note that morons.org
contains some strong language and controversial opinions. Please
exercise discretion if you are easily
offended.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>image</name>\r\t\t\t\t\t\t<value>\r\t\t\t\t\t\t\t<struct>\r\t\t\t\t\t\
t\t\t<member>\r\t\t\t\t\t\t\t\t\t<name>height</name>\r\t\t\t\t\t\t\t\t\t<value>
31</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\
t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t\t\t\t<value>Morons Dot
Org</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\
t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t\t\t\t<value>http://web.morons.org/
images/button.png</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>
\r\t\t\t\t\t\t\t\t\t<name>width</name>\r\t\t\t\t\t\t\t\t\t<value>88</value>
\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t</struct>\r\t\t\t\t\t\t\t</value>
\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>language</name>
\r\t\t\t\t\t\t<value>en-
us</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://web.morons.org/</val'
body:
'ue>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>
\r\t\t\t\t\t\t<value>Morons Dot
Org</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.morons.org/morons.rss</value>\r\
t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.myelin.co.nz/wcswiki/rss.xml</name>
\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>The Weblog Community Server
Wiki</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value>en-
us</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://www.myelin.co.nz/cgi-
bin/wcswiki.pl</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\
t\t\t<name>title</name>\r\t\t\t\t\t\t<value>CommunityServerWiki</value>\r\
t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>url</name>\r\t\
t\t\t\t\t<value>http://www.myelin.co.nz/wcswiki/rss.xml</value>\r\t\t\t\t\
t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>\r\t\t<
member>\r\t\t\t<name>http://www.newsisfree.com/rss/8ae2447b4f234cf2a1d1f2d66b6e35cd/
</name>\r\t\t\t<value>\r\t\t\t'
body:
'\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description</name>\r\t\
t\t\t\t\t<value>The Imaging Resource News page is the best way to stay
on top of all the latest in the fast-paced world of digital imaging!
Up-to-the-minute news as well as coverage of the latest articles and
reviews covering digital imaging hardware and software of a... (powered
by http://www.newsisfree.com/syndicate.php - FOR PERSONAL AND NON
COMMERCIAL USE
ONLY!)</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\t\t\
t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://www.
imaging-
resource.com/NEWS.HTM</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\
t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>Imaging Resource News
Page</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.newsisfree.com/rss/8ae2447b4f234cf2a1d1f2d66b6e35cd/
</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\
t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.newsisfree.com/rss/92248dd22d21ac1d2c5f9a0f023e5688/
</name>\r\t\t\t<value>'
body:
'\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description</name>
\r\t\t\t\t\t\t<value>(powered by
http://www.newsisfree.com/syndicate.php - FOR PERSONAL AND NON
COMMERCIAL USE
ONLY!)</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\t\t\
t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://www.
nasa.gov/today/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\
t\t\t<name>title</name>\r\t\t\t\t\t\t<value>NASA Daily
News</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.newsisfree.com/rss/92248dd22d21ac1d2c5f9a0f023e5688/
</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\
t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.newsisfree.com/rss/a091e5de50a2234add7e60c5cba9d43a/
</name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>description</name>\r\t\t\t\t\t\t<value>die tageszeitung (powered by
http://www.newsisfree.com/syndicate.php - FOR PERSONAL AND NON
COMMERCIAL USE
ONLY!)</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t'
body:
'\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\
t\t\t\t<value>http://www.taz.de/pt/.nf/home</value>\r\t\t\t\t\t\t</member>
\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>TAZ<
/value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>url<
/name>\r\t\t\t\t\t\t<value>http://www.newsisfree.com/rss/a091e5de50a2234add7e60c5cba9d43a/
</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\
t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.newsisfree.com/rss/f81579bb08f1a3d29b8a6560ea300c75/
</name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>description</name>\r\t\t\t\t\t\t<value>(powered by
http://www.newsisfree.com/syndicate.php - FOR PERSONAL AND NON
COMMERCIAL USE
ONLY!)</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\t\t\
t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://www.
dotcomtod.com</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\
t\t<name>title</name>\r\t\t\t\t\t\t<value>Dotcomtod</value>\r\t\t\t\t\t\t<
/member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t<value>
http://www.newsisfree.com/rss/f81579b'
body:
'b08f1a3d29b8a6560ea300c75/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>
\r\t\t\t\t</value>\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.
newsisfree.com/rss/fd55cf091c9fc3e86cd3841aef45e644/</name>\r\t\t\t<value>
\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description</name>
\r\t\t\t\t\t\t<value>News In Brief (powered by
http://www.newsisfree.com/syndicate.php - FOR PERSONAL AND NON
COMMERCIAL USE
ONLY!)</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\t\t\
t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http://www.
sciam.com/news_directory.cfm</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>
\r\t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>Scientific
American</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>url</name>\r\t\t\t\t\t\t<value>http://www.newsisfree.com/rss/fd55cf091c9fc3e86cd3841aef45e644/
</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\
t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.pycs.net/notes/rss.xml<
/name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>description</name>\r\t\t\t\t\t\t<value>Comments an'
body: 'd opinions from the coder behind the <a
href="http://www.pycs.net/">Python Community Server</a>. Techy types
might want to check out <b><a
href="http://www.pycs.net/devlog/">the development blog</a></b>
for more software-related talk.<br />\r\n<br />\r\nCheck out
<b><a href="http://www.myelin.co.nz/cgi-
bin/wcswiki.pl">CommunityServerWiki</a></b> for discussion on PyCS
and other community
servers!</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\
t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http:
//www.pycs.net/notes/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\
t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>Python Community
Server:
Noteblog</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>url</name>\r\t\t\t\t\t\t<value>http://www.pycs.net/notes/rss.xml</value>
\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.python.org/channews.rdf</name>\r\t\
t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/n'
body: 'ame>\r\t\t\t\t\t\t<value>Python is an interpreted, interactive,
object-oriented\n programming
language.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\
t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http:
//www.python.org/</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\
t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>Python
News</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.python.org/channews.rdf</value>\r\
t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.researchbuzz.com/researchbuzz.rss</name>
\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>News and information on search engines,
databases, and other Internet research
resources</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>image</name>\r\t\t\t\t\t\t<value>\r\t\t\t\t\t\t\t<struct>\r\t\t\t\t\t\
t\t\t<member>\r\t\t\t\t\t\t\t\t\t<name>height</name>\r\t\t\t\t\t\t\t\t\t<value>
31</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>\r\t\t\t\
t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t\t\t\t<valu'
body:
'e>ResearchBuzz!</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t<member>
\r\t\t\t\t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t\t\t\t<value>http://www.
researchbuzz.com/images/88x31-5.jpg</value>\r\t\t\t\t\t\t\t\t\t</member>\r\
t\t\t\t\t\t\t\t<member>\r\t\t\t\t\t\t\t\t\t<name>width</name>\r\t\t\t\t\t\
t\t\t\t<value>88</value>\r\t\t\t\t\t\t\t\t\t</member>\r\t\t\t\t\t\t\t\t</struct>
\r\t\t\t\t\t\t\t</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\
t\t\t\t<name>language</name>\r\t\t\t\t\t\t<value>en-
us</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link<
/name>\r\t\t\t\t\t\t<value>http://www.researchbuzz.com</value>\r\t\t\t\t\t\
t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\t\t\t\t\
t<value>ResearchBuzz</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\
t\t\t\t\t\t<name>url</name>\r\t\t\t\t\t\t<value>http://www.researchbuzz.com/
researchbuzz.rss</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\
t\t</value>\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>http://www.scripting.
com/rss.xml</name>\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\
t\t\t\t\t\t<name>description</name>\r\t\t\t\t\t\t<value>A weblog about
scripting and stuff like
that.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
language</name>\r\t\t\t\t\t\t<value>en-'
body:
'us</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
link</name>\r\t\t\t\t\t\t<value>http://www.scripting.com/</value>\r\t\t\t\
t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>title</name>\r\t\t\t\
t\t\t<value>Scripting
News</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>
url</name>\r\t\t\t\t\t\t<value>http://www.scripting.com/rss.xml</value>\r\
t\t\t\t\t\t</member>\r\t\t\t\t\t</struct>\r\t\t\t\t</value>\r\t\t\t</member>
\r\t\t<member>\r\t\t\t<name>http://www.tagesschau.de/newsticker.rdf</name>
\r\t\t\t<value>\r\t\t\t\t<struct>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<name>description<
/name>\r\t\t\t\t\t\t<value>tagesschau.de: Dieses Dokument enth\x8alt
Teaser auf alle Meldungen der aktuellen Homepage in der HTML-
Variante.</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>language</name>\r\t\t\t\t\t\t<value></value>\r\t\t\t\t\t\t</member>\r\
t\t\t\t\t<member>\r\t\t\t\t\t\t<name>link</name>\r\t\t\t\t\t\t<value>http:
//www.tagesschau.de</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\
t\t\t\t\t<name>title</name>\r\t\t\t\t\t\t<value>tagesschau im
Internet</value>\r\t\t\t\t\t\t</member>\r\t\t\t\t\t<member>\r\t\t\t\t\t\t<
name>url</name>\r\t\t\t\t\t\t<value>http://www.tagesschau.de/newsticker.rdf<
/valu'
Traceback (most recent call last):
File "<input>", line 1, in ?
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
821, in __call__
return self.__send(self.__name, args)
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
975, in __request
verbose=self.__verbose
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
853, in request
return self.parse_response(h.getfile())
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
891, in parse_response
p.feed(response)
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
390, in feed
self._parser.Parse(data, 0)
ExpatError: not well-formed: line 728, column 48
>>>
Hi!
> The second problem is a bit weird - I thought the new aggregator API
> was part of current Radio installations? Or did I miss something and I
> have to install a tool for it? I did a "update root", but that didn't
> give me any new objects.
Ok, _this_ part is solved, as I now actually found my brain, used it and
discovered that it would help to install beta software before trying to
use beta software ;-)
> The transcript of the session is attached, maybe one of you has a clue
> and can help me.
One clue still needed, what's up with the encoding and weird UTF-8 and
not-wellformed problems? I go to bed now, so you can warp your minds at
either the biiiiig problem or the biiiiig stupidity of myself ;-)
bye, Georg
Hi!
Digged a bit deeper: it seems like two problems: first, even though I
set the encoding of the server to ISO-8859-1, it barfs on bad UTF-8 data
because of special characters (for example the "'" in can't - looks like
RU delivers a highbit character on that occasion, and the same is true
for german umlauts). Next, the aggregator API isn't available in my
installation. Huh?
The first problem seems to be because the encoding is only used for the
request, but the response is fully up to the client. xmlrpclib seems to
expect UTF-8, regardless of what the encoding setting of the Server
object. It would be better if RU would deliver the encoding in it's
<?xml...?> header. And it looks like it actually isn't ISO-8859-1, but
the Mac charset, am I right there?
The second problem is a bit weird - I thought the new aggregator API was
part of current Radio installations? Or did I miss something and I have
to install a tool for it? I did a "update root", but that didn't give me
any new objects.
The transcript of the session is attached, maybe one of you has a clue
and can help me.
bye, Georg
# first I set up server, verbose mode and encoding
>>> srv = xmlrpclib.Server('http://murphy.bofh.ms:5335/RPC2')
>>> srv._ServerProxy__verbose = 1
>>> srv._ServerProxy__encoding='ISO-8859-1'
# then I test against the metaWebLog API, as that _is_ available to me:
>>> srv.metaWebLog.getPost(1,'YYYYY','XXXXX')
connect: (murphy.bofh.ms, 5335)
send: 'POST /RPC2 HTTP/1.0\r\nHost: murphy.bofh.ms:5335\r\nUser-Agent:
xmlrpclib.py/1.0.0 (by www.pythonware.com)\r\nContent-Type:
text/xml\r\nContent-Length: 267\r\n\r\n'
send: "<?xml
version='1.0'?>\n<methodCall>\n<methodName>metaWebLog.getPost</methodName>
\n<params>\n<param>\n<value><int>1</int></value>\n</param>\n<param>\n<value>
<string>hugo</string></value>\n</param>\n<param>\n<value><string>Ludwig</string>
</value>\n</param>\n</params>\n</methodCall>\n"
reply: 'HTTP/1.1 200 OK\r\n'
header: Connection: close
header: Content-Length: 1273
header: Content-Type: text/xml
header: Date: Sun, 17 Nov 2002 23:47:06 GMT
header: Server: Radio UserLand/8.0.8-MacOSX
body: '<?xml
version="1.0"?>\r\n<methodResponse>\r\n\t<params>\r\n\t\t<param>\r\n\t\t\t<
value><struct>\r\t\t<member>\r\t\t\t<name>categories</name>\r\t\t\t<value>
\r\t\t\t\t<array>\r\t\t\t\t\t<data>\r\t\t\t\t\t\t</data>\r\t\t\t\t\t</array>
\r\t\t\t\t</value>\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>dateCreated<
/name>\r\t\t\t<value>\r\t\t\t\t<dateTime.iso8601>20021103T14:36:42</dateTime.
iso8601>\r\t\t\t\t</value>\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>description<
/name>\r\t\t\t<value>Ok, hier gehts los. Nachdem der Community-Server
jetzt l\x8auft, muss auch ein erstes Weblog her. Mal schauen wer noch so
alles kommt, aber erstmal ist die Testphase er\x9affnet. Viele neue
Features sind geplant, vor allem ist schon eine Vorkehrung f\x9fr
"echte" Servernamen getroffen. Wer will kann also eine Adresse ala <a
href="http://hugo.muensterland.org/">hugo.muensterland.org</a>
bekommen. Allerdings wird das wohl ein kostenpflichtiges Feature werden,
die freien Weblogs bleiben auf die Usernummer
beschr\x8ankt.</value>\r\t\t\t</member>\r\t\t<member>\r\t\t\t<name>permaLink<
/name>\r\t\t\t<value>http://hugo.muensterland.org/2002/11/03.html#a'
Traceback (most recent call last):
File "<input>", line 1, in ?
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
821, in __call__
return self.__send(self.__name, args)
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
975, in __request
verbose=self.__verbose
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
853, in request
return self.parse_response(h.getfile())
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
891, in parse_response
p.feed(response)
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
390, in feed
self._parser.Parse(data, 0)
ExpatError: not well-formed: line 23, column 66
# then I test against the aggregator API, but that isn't available.
>>> srv.aggregator.getSubs('YYYYY','XXXXX')
connect: (murphy.bofh.ms, 5335)
send: 'POST /RPC2 HTTP/1.0\r\nHost: murphy.bofh.ms:5335\r\nUser-Agent:
xmlrpclib.py/1.0.0 (by www.pythonware.com)\r\nContent-Type:
text/xml\r\nContent-Length: 244\r\n\r\n'
send: "<?xml version='1.0'
encoding='ISO-8859-1'?>\n<methodCall>\n<methodName>aggregator.getSubs</methodName>
\n<params>\n<param>\n<value><string>hugo</string></value>\n</param>\n<param>
\n<value><string>Ludwig</string></value>\n</param>\n</params>\n</methodCall>
\n"
reply: 'HTTP/1.1 200 OK\r\n'
header: Connection: close
header: Content-Length: 439
header: Content-Type: text/xml
header: Date: Sun, 17 Nov 2002 23:49:13 GMT
header: Server: Radio UserLand/8.0.8-MacOSX
body: '<?xml
version="1.0"?>\r\n<methodResponse>\r\n\t<fault>\r\n\t\t<value>\r\n\t\t\t<
struct>\r\n\t\t\t\t<member>\r\n\t\t\t\t\t<name>faultCode</name>\r\n\t\t\t\
t\t<value>\r\n\t\t\t\t\t\t<int>7</int>\r\n\t\t\t\t\t\t</value>\r\n\t\t\t\t\
t</member>\r\n\t\t\t\t<member>\r\n\t\t\t\t\t<name>faultString</name>\r\n\t\
t\t\t\t<value>\r\n\t\t\t\t\t\t<string>Can\xd5t evaluate the expression
because the name \xd2getSubs\xd3 hasn\xd5t been
defined.</string>\r\n\t\t\t\t\t\t</value>\r\n\t\t\t\t\t</member>\r\n\t\t\t\
t</struct>\r\n\t\t\t</value>\r\n\t\t\t\t</fault>\r\n\t</methodResponse>\r\
n'
Traceback (most recent call last):
File "<input>", line 1, in ?
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
821, in __call__
return self.__send(self.__name, args)
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
975, in __request
verbose=self.__verbose
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
853, in request
return self.parse_response(h.getfile())
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
891, in parse_response
p.feed(response)
File "Festplatte:Applications:Python 2.2.2:Lib:xmlrpclib.py", line
390, in feed
self._parser.Parse(data, 0)
UnicodeError: UTF-8 decoding error: invalid data
Right,
It looks like the archive blog is going OK:
http://www.pycs.net/archive/
I'm guessing this message will be:
http://www.pycs.net/archive/2002/11/18/#200211183
Note that the archive is only updated when I check my mail, so it won't be
as responsive as the SourceForge one (if it starts going again). It gives
an interesting platform to experiment on, though.
BTW, this will be a standard part of bzero next time I do a release.
Cheers,
Phil :)
This should show up in the archive blog. Fingers crossed ...
Dean:
> > ... perhaps a bzero
> > blog on pycs.net like the MT one I did of the
> > group-forming list at
> > http://dev.myelin.co.nz/gf/ ;-)
>
> Please do.
Done.
http://www.pycs.net/archive/
It's not automatic yet (I have to feed each message in), doesn't do any
threading, and doesn't know about past messages to the list, but it's a
start.
Enjoy!
- P