注意
オートコンプリートのAPIポリシー等を検索していみましたが、こういう使い方がいけないみたいな記述はみつけられませんでした、、が実行は自己責任でお願いします。
※正直自分が見つけられないだけかもしれません。
こんな感じのもの
テストデータなんかを作るときに、とりあえず全角の単語が欲しい時に使用
コンソール上に単語がたくさん出ます(440くらい)
こちらの方のプログラムを半分以上流用していますm(_ _)m
環境
windows10
python3.9.4
pip実行(以下パッケージが必要)
python -m pip install requests
python -m pip install lxml
python -m pip install numpy
python -m pip install pandas
ソース
test.py
import pprint
import requests
from lxml import etree
import numpy as np
import pandas as pd
qstrs = ["あ", "い", "う", "え", "お", "か", "き", "く", "け", "こ",
"さ", "し", "す", "せ", "そ", "た", "ち", "つ", "て", "と",
"な", "に", "ぬ", "ね", "の", "は", "ひ", "ふ", "へ", "ほ",
"ま", "み", "む", "め", "も", "や", "ゆ", "よ",
"ら", "り", "る", "れ", "ろ", "わ" ]
# 単語格納用
google_suglist = []
# ひらがな分ループ
for qstr in qstrs:
# オートコンプリートのデータを取得する
google_r = requests.get("https://www.google.com/complete/search",
params={'q':qstr,
'hl':'ja',
'ie':'utf_8',
'oe':'utf_8',
'output': 'toolbar'})
google_root = etree.XML(google_r.text)
google_sugs = google_root.xpath("//suggestion")
google_sugstrs = [s.get("data") for s in google_sugs]
for ss in google_sugstrs:
google_suglist.append(ss)
# print(ss)
# コンソール出力
for word in google_suglist:
print(word)
実行(要らんでしょうが…)
python test.py
最後に
ランダムで1文字生成してとかにすると、もうちょっと良いものになるかも、、