楽天ブックスCD検索APIを利用したアプリ2

入力例:babymetal

表示はするけど反応するまでに数十秒かかります。反応するようになってからは速いです。

このサイトの詳細はイチゲブログ

タイトル 楽天ブックスCDリンク
import urllib.parse from pyodide.http import open_url import json def searchCD(*ags, **kws): input_test_element = Element("input_test") input_word = input_test_element.element.value input_test_element.clear() #処理後に入力フォームを空にする keyword=repr(input_word) test_text='' request_url='https://app.rakuten.co.jp/services/api/BooksCD/Search/20170404' APP_ID='1021810494159056409' params={'artistName':keyword, 'sort':'-releaseDate', 'applicationId':APP_ID} url=request_url+'?'+'artistName='+urllib.parse.quote(keyword)+r'&sort='+'-releaseDate'+r'&applicationId='+APP_ID res = json.loads(open_url(url).read()) result=res dic=[] if 'error' in result: test_text='失敗です!' else: if result['last'] !='': suu=result['last'] else: suu=0 for i in range(suu): if (result['Items'][i]['Item']['smallImageUrl']!='' and result['Items'][i]['Item']['title']!='' and result['Items'][i]['Item']['itemUrl'] !=''): dic.append(result['Items'][i]['Item']['smallImageUrl']) dic.append(result['Items'][i]['Item']['title']) dic.append(result['Items'][i]['Item']['itemUrl']) if dic == []: test_text='該当するアーティストがいません' else: srclink=dic[0::3] youtubetitle=dic[1::3] youtubelink=dic[2::3] for i in range(5): timage='t'+str(i) tlink='t'+str(i+10) task_html = Element(timage) task_template1 = Element(tlink) tablecss=document.getElementById('restable') tablecss.style.display = 'block' task_html_content = task_html.select("#image01") task_html_content.element.src = srclink[i] pyscript.write("mes",str(i)) task_html = task_template1 task_html_content = task_html.select("a") task_html_content.element.href = youtubelink[i] task_html_content.element.innerText = youtubetitle[i] pyscript.write("mes",test_text) return