feedlyのAPIを使うにあたってRSSを整理していて気になったこと。
OPMLインポートした場合、どういう挙動を示すのか。よくわからなかったので実験してみました。
前提条件
既存の形がこれ。
「IT」というグループの中にTechCrunchとギズモードのRSSが、分類なしにGIGAZINEのフィードがあります。
OPMLの内容だとこうなる。
<?xml version="1.0" encoding="UTF-8"?> <opml version="1.0"> <head> <title>m subscriptions in feedly Cloud</title> </head> <body> <outline text="IT" title="IT"> <outline type="rss" text="ギズモード・ジャパン" title="ギズモード・ジャパン" xmlUrl="http://www.gizmodo.jp/index.xml" htmlUrl="http://www.gizmodo.jp/"/> <outline type="rss" text="TechCrunch Japan" title="TechCrunch Japan" xmlUrl="http://jp.techcrunch.com/feed/" htmlUrl="http://jp.techcrunch.com"/> </outline> <outline type="rss" text="GIGAZINE" title="GIGAZINE" xmlUrl="http://gigazine.net/index.php?/news/rss_2.0/" htmlUrl="http://gigazine.net/"/> </body> </opml>
これを元に実験してみます。
新規のOPMLをインポートしてみる
OPMLにCNETのRSSを追加して、GIGAZINEのRSS記載を消してみます。CNETのRSSがこれ。
http://feed.japan.cnet.com/rss/index.rdf
OPMLの記載はこちら。
<?xml version="1.0" encoding="UTF-8"?> <opml version="1.0"> <head> <title>m subscriptions in feedly Cloud</title> </head> <body> <outline text="IT" title="IT"> <outline type="rss" text="ギズモード・ジャパン" title="ギズモード・ジャパン" xmlUrl="http://www.gizmodo.jp/index.xml" htmlUrl="http://www.gizmodo.jp/"/> <outline type="rss" text="TechCrunch Japan" title="TechCrunch Japan" xmlUrl="http://jp.techcrunch.com/feed/" htmlUrl="http://jp.techcrunch.com"/> </outline> <outline type="rss" text="CNET" title="CNETのRSS" xmlUrl="http://feed.japan.cnet.com/rss/index.rdf" htmlUrl="http://japan.cnet.com/"/> </body> </opml>
これをfeedlyにインポートするとこうなった。
結論
* もともと入っていたもの(GIGAZINE等)は残る。
* 新しく追加したものは追加される
場所を変えたらどうなるか?
今の形がこれ。
これのOPMLのギズモードをカテゴリ無しにしたOPML(以下の形)をインポートしてみるとどうなるのか。
<?xml version="1.0" encoding="UTF-8"?> <opml version="1.0"> <head> <title>m subscriptions in feedly Cloud</title> </head> <body> <outline text="IT" title="IT"> <outline type="rss" text="TechCrunch Japan" title="TechCrunch Japan" xmlUrl="http://jp.techcrunch.com/feed/" htmlUrl="http://jp.techcrunch.com"/> </outline> <outline type="rss" text="CNET" title="CNETのRSS" xmlUrl="http://feed.japan.cnet.com/rss/index.rdf" htmlUrl="http://japan.cnet.com/"/> <outline type="rss" text="ギズモード・ジャパン" title="ギズモード・ジャパン" xmlUrl="http://www.gizmodo.jp/index.xml" htmlUrl="http://www.gizmodo.jp/"/> </body> </opml>
結果としては変わらずこの形でした。
結論
* 重複したフィードの場合は、すでに存在しているカテゴリでのほうでデータが残る
* ようは形は変わらず、既存のものも残って、情報の漏れはないということ。
名前を変えたものをインポートしたらどうなるのか?
この形で、タイトルとテキストを変更したものをインポートしたらどうなるのか?
<?xml version="1.0" encoding="UTF-8"?> <opml version="1.0"> <head> <title>m subscriptions in feedly Cloud</title> </head> <body> <outline text="IT" title="IT"> <outline type="rss" text="TechCrunch Japan" title="TechCrunch Japan" xmlUrl="http://jp.techcrunch.com/feed/" htmlUrl="http://jp.techcrunch.com"/> </outline> <outline type="rss" text="CNET" title="CNETのRSS" xmlUrl="http://feed.japan.cnet.com/rss/index.rdf" htmlUrl="http://japan.cnet.com/"/> <outline type="rss" text="ギズモード・ジャパンPart1" title="ギズモード・ジャパンPart1" xmlUrl="http://www.gizmodo.jp/index.xml" htmlUrl="http://www.gizmodo.jp/"/> </body> </opml>
(ギズモードのところのテキストとタイトルを変更したもの)
結果は変わらず。
結論:
* 既存のものが優先される
終わりに
わかったこと。
- ないものは追加される
- あるものは既存のものが優先される
- キーとなっているものはおそらくxmlUrl(すいません。調べてません)
消えるってことはないから、別のOPMLを持ってきても大丈夫そうということがわかりました。
逆に、OPMLインポートでフィードを削除するってことは出来るのかどうか。そのへん知っている人がいたらぜひ教えて下さい。