小编Ric*_*ich的帖子

运行查询时如何在 python 中创建包含当前日期和时间的文件名

当我运行下面的查询时,它会创建一个名为 \xe2\x80\x98mycsvfile\xe2\x80\x99 的文件。但是,有没有办法在创建 CSV 文件时添加当前日期和时间戳?例如,如果我现在运行此查询,则文件应命名为 mycsvfile20171012 \xe2\x80\x93 10:00:00 (类似的名称)。

\n\n

有人可以编辑我的代码并告诉我如何做到这一点吗?

\n\n

我的代码:

\n\n
from elasticsearch import Elasticsearch\nimport csv\n\nes = Elasticsearch(["9200"])\n\n# Replace the following Query with your own Elastic Search Query\nres = es.search(index="search", body=\n                {\n                    "_source": ["DTDT", "TRDT", "SPLE", "RPLE"],\n                    "query": {\n                        "bool": {\n                            "should": [\n                                {"wildcard": {"CN": "TEST1"}}\n\n                            ]\n                        }\n                    }\n}, size=10)\n\n\n\nheader_names = { \'DTDT\': \'DATE\', \'TRDT\': \'TIME\', ...}\n\nwith open(\'mycsvfile.csv\', \'w\') as f:  # Just use \'w\' mode in 3.x\n    header_present  = False\n    for doc in res[\'hits\'][\'hits\']:\n        my_dict = …
Run Code Online (Sandbox Code Playgroud)

python python-3.x python-3.4 python-3.5 python-3.6

4
推荐指数
2
解决办法
2万
查看次数

重新排列 CSV 列

创建 CSV 文件时,列不在我想要的正确位置。例如,“Period”列(变量是“RD”)是文件中的第二列等等。

有没有办法将每列的位置设置到我想要的位置?

我的代码:

from datetime import datetime
from elasticsearch import Elasticsearch
import csv

es = Elasticsearch(["9200"])


res = es.search(index="search", body=
                {
                    "_source": ["VT","NCR","N","DT","RD"],
                    "query": {

                        "bool": {
                            "must": [{"range": {"VT": {
                                            "gte": "now/d",
                                            "lte": "now+1d/d"}}},

                                {"wildcard": {"user": "mike*"}}]}}},size=10)


csv_file = 'File_' + str(datetime.now().strftime('%Y_%m_%d - %H.%M.%S')) + '.csv'


header_names = { 'VT': 'Date', 'NCR': 'ExTime', 'N': 'Name', 'DT': 'Party', ' RD ': 'Period'}



with open(csv_file, 'w', newline='') as f:
    header_present  = False
    for doc in res['hits']['hits']:
        my_dict = doc['_source'] …
Run Code Online (Sandbox Code Playgroud)

python csv python-3.x python-3.6

0
推荐指数
1
解决办法
5597
查看次数

标签 统计

python ×2

python-3.6 ×2

python-3.x ×2

csv ×1

python-3.4 ×1

python-3.5 ×1