Blog

はてなAPIを使用して連想キーワードを取得する

2015.04.03 | Python | 595views


python-logo-master-v3-TM

はてなキーワード連想語APIを使用して、文章の中に組み込むためのキーワードを取得してみるスクリプトです。概要としては一旦外部にtxtファイルで保存しUnicodeエスケープ問題を回避しています。もっとシンプルに書けるかもしれませんがとりあえず。

ブログを書いたり、サイトを制作するときなど何かしら便利に使えるアイデアがあるかもしれません。

#!/usr/bin/python2.7
# -*- coding: utf-8 -*-
import xmlrpclib
import sys, codecs
sys.stdin  = codecs.getreader("utf-8")(sys.stdin)
sys.stdout = codecs.getwriter("utf-8")(sys.stdout)

get_input = raw_input("prease keywords: ")

server = xmlrpclib.ServerProxy("http://d.hatena.ne.jp/xmlrpc")
res = server.hatena.getSimilarWord({"wordlist": get_input})


f = open("hatena.txt" , "aw")
lists = res["wordlist"]

for x in lists:
	f.write(str(x) + "\n")
	f.close


f = open("hatena.txt","rb")
data = f.read()
f.close()
print data.decode("unicode-escape")

raw_inputを使用しているのでターミナルで動かした場合は任意のキーワードを入力可能です。
hatena.txtをスクリプトファイルと同じ階層に自動的に生成します。


f = open("hatena.txt" , "aw")
lists = res["wordlist"]

for x in lists:
	f.write(str(x) + "\n")
	f.close


f = open("hatena.txt","rb")
data = f.read()
f.close()
print data.decode("unicode-escape")

この部分でUnicodeエスケープ問題 u”\u36043\u3302 のようなことを外部ファイルに一旦保存してからデコードしてファイルを読み出すことで解消しています。ターミナルから使用する場合は二度目以降は自動生成されたhatena.txtを削除しておかないと重複してしまいますので注意。

このエントリーが役に立ったらシェアしてください


LLC JIRIKI HOME

この記事を書いた人

淵上 喜弘

著者:LLC JIRIKI

合同会社ジリキ 代表社員兼、業務執行社員。
1979年生まれ 兵庫県尼崎市出身・明石市育ち。

川崎医療福祉大学を卒業後、日産サティオ岡山に就職し初年度新人賞をカルロス・ゴーンCEOより受賞。その後NTT関連フレッツ販売会社に再就職し、地域賞2位を受賞。OCN販売表彰2位も同時受賞するとともにBフレッツ単独販売数の記録を打ち立てる。2006年合同会社ジリキ設立。SEO、WEBサイト制作業を開始する。

SEOで「大阪 探偵」や「離婚 行政書士」などのキーワードや「子ども 教材」「スマートフォンケース」など各種キーワードで1位を獲得。サイト制作でも毎日コミュニケーションズ・マイナビ女子オープンのサイトを制作。その後ECサイト運営サポートに着手し、売上月商50万のストアを1年半で1700万の月商に成長させる。

スマートフォンケースなどの商品企画開発も手がけ、楽天ランキングでも1位獲得、家電ジャンルMVPなどECサイトコンサルティングでも実績あり。

現在、グロースハックに注力しており様々な業種のサイトのCVアップをサポート中。チームとしてのグロースハック実績ではKaizenグロースハッカー総合 Top 20%、不動産 Top 10などを頂いています。

プログラミングは本業ではなくあくまでも趣味の一環として取り組んでいます。月1回ペースで東京へ出張へ行っておりますので、機会があれば是非お話をしましょう。

LLC JIRIKI