There's a new version of the import module available for testing. In this implementation both feeds and items are nodes. It is able to
read RSS 0.9x, 1.0 and 2.0 and has support for some DC items, the SY module and the content:encoded stuff. In addition
to that it also makes use of RSS 2.0's guid and comments elemens (and some more). Adding a feed is as simple as
supplying the url and all the other options will be filled in automagically. There's also an option to promote news
items automatically .
It needs (lots of) testing and bugs fixed, while some features still need to be implemented. I need some help of taxonomy
specialists to find a way to set taxonomy terms on items automatically. When a feed is administered you should be able
to specify a set of taxonomy terms for the items.
If you want to test it out on your own installation read the INSTALL file carefully, as there are some
important changes when using the cron.php script.
You can see it in action on my test site.
Hope you like it. Please send feature suggestions, bug fixes, comments, questions etc. to me (breyten@dataloss.nl)
Comments
Great
I am very interested in this new module. I am yet to install it, but now know what to do in the week-end ...
Does the node-implementation mean one can create new feeds? (e.g., composite feeds)
John
composite feeds for free
yes, this new module gives us composite feeds. i sent a patch to breyten a few days ago. onc he applies that, the taxonomy integration will be very strong in his new module(s)
Some questions and remarks
Breyten,
xmlparser.inc!Good stuff. Looking forward to an update.
For good reason
I'm wondering if you are confusing feeds and bundles. Feeds cannot be mere taxonomy terms. We need to store the URL of the feed, the period of retrieval, the name of the feed, and so on. That can't be stored in the taxonomy tables of course. So Breyten has wisely made this a node type. One byproduct of this is that we can use taxonomy to catagorize feeds, which then automatically tag their respective items as items are imported (I sent breyten a patch for this). Thus, bundles are easily presented using taxonomy.
Your idea of optionally deleting old news items is a good one. That pretty much takes care of the node performance question for now.
I think that if a large node table becomes an issue, we need to deal with it specifically, and not write code to work around it. IMO, storing feed items and comments outside of the node table is writing code around a (possible) problem. A module author should be unafraid to jam thousands of nodes in the db if desired. It is the responsibility of the core engine to deal with this ... I wish we had more database expertise in this project (are you out there?).
Using this module
I don't know yet
. I can run a benchmark, just need to know how to do it.
It seems like a good idea to implement such an option. I'll make it a per-feed option, kinda like the watchdog module.
Initially, I took the parser from revjim.net and extended that. Now I'm working on my own parser.
See moshe's reply for this.
Tested
. Since the introduction of the guids in RSS 2.0 this is a lot simpeler. But the problem still exists for 0.9x feeds. I mainly look at the link (least likely to change) and the title.
Great. I added that to the the module(s).
XML parser
Initially, I took the parser from revjim.net and extended that. Now I'm working on my own parser.
But why? Nowadays, PHP comes with a built-in XML parser that is enabled by default ...
MagpieRSS
Is there any interest in adopting MagpieRSS as a "system module" (or perhaps more appropriately an "Include") and wrapping it with a Drupal API? The cooperation between two open source projects would benefit both and stabilize the development of RSS based modules within Drupal. I use RSS feeds from several systems within our Intranet to dynamically create menus within a node.
A while back this comment refered to using RSS weather feeds. My point is that RSS handling can be used throughout Drupal if it had a simple API.
MagpieRSS at Sourceforge
Yes
This was discussed extensively on the development mailinglist. Basically, MagpieRSS does more than RSS fetching, it also has an HTTP client and a cache for it. We don't need this in Drupal because we have our own framework for this.
If you take away everything except the parser, not much is left of MagpieRSS, and we would be much better off just adapting our own code so it incorporates the MagpieRSS's abilities that we currently don't have. MagpieRSS has problems of its own: for example it does not handle character encodings at all. This is something which Drupal already does.
http://lists.drupal.org/archives/drupal-devel/2004-07/msg00551.html
http://lists.drupal.org/archives/drupal-devel/2004-07/msg00447.html
Importing a text document
I am new to Drupal, and have used it to set up the national newspaper of the Solomon Islands online. My problem is at the moment they are supplying a 35+ page document of all the stories to me with headings, sections, and body text, which is getting cut and pasted into the site.
Could someone please give me a process, or point me to some information, that will enable me to turn the document into an XML doc that I can then upload to drupal? (need the xml definition, and need the process for uploading)
Regards,
Nick Reese
See the national newspaper of the Solomon Islands online using Drupal:
www.solomonstarnews.com
import was continued under node_aggregator
the import system you are looking for can be found here: http://drupal.org/project/node_aggregator
[Moshe: fixed bad link. was pointing to node_import]
[Ber | Drupal Services webschuur.com]
I've been working with
I've been working with MagpieRSS and the flexinode module to feed random images from flickr. The php file that uses MagpieRSS works fine by itself. However, when i incorporate it into drupal, i get this warning message (along with my photos):
warning: mkdir() [function.mkdir]: Permission denied in /.../themes/bluemarine/magpierss/rss_cache.inc on line 34.
warning: fopen(magpie_cache/c25fb6c1d04909b44915bd950e3d5239) [function.fopen]: failed to open stream: No such file or directory in /.../themes/bluemarine/magpierss/rss_cache.inc on line 54.
I've screwed around with permissions and i've made sure that the current folder and parent folder and even the cache folder all have their permissions properly set and to no avail. Please help.