Maccle

自分のサイトの被リンク元ブログや指定ワードの関連記事をRSSで取得する方法

約 7 分

まぁ、技術的にはまったく大したことじゃないのですが。。

このブログはWordPressをベースにしているのですが、いつもログインしてWordPressのダッシュボードで何の疑問も抱かずみていた「被リンク」って項目にある自分のサイトへリンクしてる他サイトの記事のリストがふと気になったので、探ってみたら、あら簡単・便利。

実はこのWordPressのダッシュボードにある「被リンク」の内容は、Googleのブログ検索から自動的にひっぱってきていました。

具体的にはどうやって被リンクを取得してるの?

とっても単純です。

この「被リンク」の取得元のURLは、以下のようになっています。

http://blogsearch.google.com/blogsearch_feeds?hl=ja&scoring=d&ie=utf-8&num=10&output=rss&partner=wordpress&q=link:[サイトURL]

このURLでいう最後の「q=link:」の後に、自分のサイトのURLを指定すれば被リンク元の記事を取得できます。

link:“という検索コマンドがなければ、普通に検索キーワードにマッチするブログ記事を検索します。

ということは、他にもGoogleの検索コマンドが使えそう!

その他検索コマンド例

related:http://***
対象URL(“http://***”)に関連する記事を取得
intitle:”some word”
記事タイトルに指定ワード(“some word”)を含む記事のみ取得
allintext:”some word”
<html>〜<html>に指定したワード(“some word”)を含む記事のみ取得

Google検索コマンド、検索演算子一覧

また、「hl=ja」の部分は日本語で結果を取得して、「num=10」で一度に10件の検索結果を取得してます。
ってことは、「hl=en」とすれば英語で結果を取得するってことですね!

つまり、「hl」というパラメータには、言語コードを与えれば、その言語で結果を表示してくれます。

num=20」とすれば、一度に20件のヒットしたブログ記事を取得します。

output” パラメータ値には “rss” がついてるので、RSSで結果を出力することを表しているのでしょうけど、元が「blogsearch_feeds」てな置換名のスクリプトになってるので、このパラメータがなくてもRSSフォーマットで結果を返してくれます。

ちなみに、「partner=wordpress」もあってもなくてもヒットします。

結果は例えばこんな感じ。

実際のフィード

<?xml-stylesheet href="https://www.gstatic.com/blogsearch/css/blogsearch_atom.css" type="text/css"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/">
	<title type="text">link:http:google.com/ - Google ブログ</title>
	<id>tag:blogsearch.google.com,2004-07:res-4724477501973589525</id>
	<link rel="self" href="https://www.google.com/search?hl=ja&amp;ie=utf-8&amp;q=link:http:google.com/&amp;tbm=blg&amp;tbs=sbd:1&amp;num=5&amp;output=atom" type="application/atom+xml"/>
	<link rel="alternate" href="https://www.google.com/search?hl=ja&amp;ie=utf-8&amp;q=link:http:google.com/&amp;tbm=blg&amp;tbs=sbd:1" type="text/html"/>
	<updated>2012-10-30T19:46:51Z</updated>
	<subtitle type="html">約 59,500 件</subtitle>
	<opensearch:totalResults>59500</opensearch:totalResults>
	<opensearch:startIndex>1</opensearch:startIndex>
	<opensearch:itemsPerPage>10</opensearch:itemsPerPage>
	<entry>
		<id>tag:peterdegraw.me,2012-10-21:/creating-wordpress-shortcodes//</id>
		<title type="html">Creating WordPress Shortcodes | Pete DeGraw</title>
		<link rel="alternate" href="http://peterdegraw.me/creating-wordpress-shortcodes/" type="text/html"/>
		<content type="html" xml:space="preserve">Here is how you would use this type of shortcode. (Note: I replaced “button” with “shortcode” so it didn&amp;#39;t execute the shortcode in my theme.) [shortcode align=&amp;quot;center&amp;quot; color=&amp;quot;white&amp;quot; size=&amp;quot;small&amp;quot; &lt;em>link=&amp;quot;http://google.com&lt;/em>&amp;quot;]Small Button[/shortcode] &lt;b>...&lt;/b></content>
		<author>
		<name>Pete</name>
		<uri>http://peterdegraw.me/</uri>
		</author>
		<published>2012-10-21T04:08:47Z</published>
		<updated>2012-10-21T04:08:47Z</updated>
	</entry>
</feed>

見ればお分かりの通り、各ノードの意味はこんな感じ。

/feed/subtitle, /feed/opensearch:totalResults
検索ヒット数
/feed/entry/title
被リンク元の記事タイトル
/feed/entry/link
被リンク元のURL
/feed/entry/content
被リンク元の記事の概要
/feed/entry/author/name
被リンク元記事の筆者名
/feed/entry/published
投稿日
/feed/entry/updated
更新日

あら簡単。
このフィード内容をプログラムで解析すれば、いろんなサイトの被リンク記事や関連記事を集めて何か面白いWebサービスやアプリでも作れそうですね!

About The Author

某IT系なんちゃってエンジニアヨーダ
Apple好きだけど盲目マカーは気持ち悪いと思ってる中道だと思い込んでるしがないダメダメエンジニア。

今もってるApple製品↓
Macbook Pro 15 inch, iMac 27 inch (Late 2009), iPhone 6 Plus, iPad (初代! いらない!)
Follow :

Leave A Reply

*

Comment On Facebook