python requests
kullanarak elasticsearch
sorguya çalışıyorum. this post ardından, aşağıdaki işlemi kullanıyorum: python isteklerinde kaçan alıntılarla Elasticsearch sorgulama
params = {
"query": {
"filtered": {
"query": {
"bool": {
"should": [
{
"query_string": {
"query": r'\"text in quotes\"'
}
}
]
}
},
"filter": {
"bool": {
"must": [
{
"range": {
"@timestamp": {
"from": 1458581389860,
"to": 1458494989000
}
}
}
]
}
}
}
},
"size": 100,
}
response = requests.get(url, params=params)
Maalesef sorguda tırnak işareti düzgün elasticsearch için kaçtı olmak görünmüyor. Ben de denedim şu şekildedir:
'\\"text in quotes\\"'
response = requests.get(url, data=json.dumps(params))
çalışır eşdeğer bukle, görünür:
curl -XGET 'MYURL/_search?pretty' -d '{
"query": {
"filtered": {
"query": {
"bool": {
"should": [
{
"query_string": {
"query": "\"test in quotes\""
}
}
]
}
},
"filter": {
"bool": {
"must": [
{
"range": {
"@timestamp": {
"from": 1458581389860,
"to": 1458494989000
}
}
}
]
}
}
}
},
"size": 100,
}'
''\\' metninde tırnaklar \\" ''ile aynıdır" r "\" tırnak içindeki metin \ "' –
Ben de öyle düşündüm. Değer iletildikten sonra dizeye bir şeyler yapması istenebilir mi? – Luke
Belki olabilir ama neden olduğunu bilmiyorum. Python elasticsearch kütüphanesini kullanmaya çalıştınız mı? –