PyhonでYahooAPI関連検索を試してみた

Yahoo!デベロッパーネットワーク

というページがあり、
ここにはウェブ検索や画像検索などのAPIの
詳細が書かれている。

関連検索ワードWebサービスは下記から。

使用するのには、
アプリケーションID
が必要みたいなので登録した。

後気をつけなければいけないのが、

関連検索ワードWebサービスは、
24時間中1IPアドレスにつき50000件のリクエストが上限となっています。

なるほど。
お金を払って商用とかに使えるのかな?
今度聞いてみたいな。

今回は以前使用した「BeautifulSoup」を使って、
早速やってみる。
(nobuさんにlxmlで良くない?って言われてたな。。。今度はそっちでやってみよう。)
[python]>>> import urllib2
>>> from urllib import quote
>>> from BeautifulSoup import BeautifulSoup
>>> opener = urllib2.build_opener()
>>> yahoo_url = u’http://api.search.yahoo.co.jp/AssistSearchService/V1/webunitSearch?’
>>> yahoo_id = u’appid=登録したアプリケーションID’
>>> search_tag = u’python’
>>> yahoo_query = ‘u&query=’ + quote(search_tag.encode(‘utf-8’))
>>> yahoo_html  = opener.open(yahoo_url + yahoo_id + yahoo_query).read()
>>> yahoo_soup  = BeautifulSoup(yahoo_html)
>>> print yahoo_soup
[/python]

実際に取得した値を表示させるとこんな感じ。

[xml]< ?xml version='1.0' encoding='utf-8'?>

monty python
colt python
python インストール
python 制限
python cgi
python 入門
python ダウンロード



[/xml]

上記から
<result>の部分のみを取得する。

[python]>>> yahoo_obj   = []
>>> for yobj in yahoo_soup.findAll(‘result’):
…  yahoo_obj.append(”.join([str(t) for t in yobj.contents[:]]))[/python]
こんな感じかな。
とりあえず取れた。

投稿者:

kishir

趣味: sk8, ピスト、ターンテーブル、レコード 仕事: Python, Objective-C, PHP, JavaScript

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です