In [34]:
from pprint import pprint
import json
import requests
url = "http://laisky.com:17200"
In [31]:
# 清空 elasticsearch
requests.delete('http://laisky.com:17200/*').json()
Out[31]:
In [33]:
# 刷新
requests.post('http://laisky.com:17200/_flush').json()
Out[33]:
In [35]:
# 初始化 elasticsearch-river-mongodb
q = {
"type": "mongodb",
"mongodb": {
"servers": [
{ "host": "127.0.0.1", "port": 27016 }
],
"db": "blog",
"collection": "posts",
"options": { "secondary_read_preference": True },
"gridfs": False
},
"index": {
"name": "blog",
"type": "posts"
}
}
requests.put("http://laisky.com:17200/_river/blog/_meta", data=json.dumps(q)).json()
Out[35]:
In [40]:
# 测试
query = {
"query": {
"match": {
"post_content": 'git'
}
}
}
es_q = json.dumps(query)
r = requests.get("http://laisky.com:17200/blog/posts/_search", data=es_q).json()
r
r = r['hits']['hits']
[i['_source']['post_title'] for i in r]
Out[40]:
In [4]:
import tornado
from tornado import httpclient
from tornado.ioloop import IOLoop
IOLoop.run_sync
Out[4]: