【Elasticsearch】再也不愁没有数据联系ES了

举报
小雨青年 发表于 2022/03/28 22:54:00 2022/03/28
【摘要】 目录 本系列正在更新,点击下方查看 【Elasticsearch】使用IMDB学习ES(1)准备数据集【Elasticsearch】使用IMDB学习ES(2)docker搭建环境【Elasticsea...

目录

本系列正在更新,点击下方查看

前言

由于ES查询操作需要基于若干数据,所以我们需要一个数据集来做对应操作的使用案例。

IMDb Datasets则是一个非常完美的数据库,只要满足

  • 个人非商用
  • 不改变数据

就可以。

所以我们基于IMDb Datasets使用python3导入ES,作为数据查询的原始数据集。

本系列相关代码文件地址 https://codechina.csdn.net/diandianxiyu/elasticsearch-imdb-es

下载数据文件

访问 https://www.imdb.com/interfaces/ 下载数据文件。

这里我用的是title.akas.tsv.gz

  • titleId (string) - a tconst, an alphanumeric unique identifier of the title
  • ordering (integer) – a number to uniquely identify rows for a given titleId
  • title (string) – the localized title
  • region (string) - the region for this version of the title
  • language (string) - the language of the title
  • types (array) - Enumerated set of attributes for this alternative title. One or more of the following: “alternative”, “dvd”, “festival”, “tv”, “video”, “working”, “original”, “imdbDisplay”. New values may be added in the future without warning
  • attributes (array) - Additional terms to describe this alternative title, not enumerated
    isOriginalTitle (boolean) – 0: not original title; 1: original title

对应下载地址为 https://datasets.imdbws.com/title.akas.tsv.gz

下载文件格式为tsv

数据文件为每天更新,目前文件大小为1.2G

在这里插入图片描述

读取文件

import csv

def read_from_tsv(file_path: str, column_names: list) -> list:
    csv.register_dialect('tsv_dialect', delimiter='\t', quoting=csv.QUOTE_ALL)
    with open(file_path, "r") as wf:
        reader = csv.DictReader(wf, fieldnames=column_names, dialect='tsv_dialect')
        datas = []
        for row in reader:
            data = dict(row)
            print(data)
            datas.append(data)
    csv.unregister_dialect('tsv_dialect')
    return datas


if __name__ == "__main__":
    read_from_tsv('title.akas.tsv',['titleId','ordering','title','region','language','types','attributes','isOriginalTitle']);

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

打印数据如下

{'titleId': 'tt0009415', 'ordering': '1', 'title': 'Das Mädel vom Ballet', 'region': '\\N', 'language': '\\N', 'types': 'original', 'attributes': '\\N', 'isOriginalTitle': '1'}
{'titleId': 'tt0009415', 'ordering': '2', 'title': 'A kis balettpatkány', 'region': 'HU', 'language': '\\N', 'types': 'imdbDisplay', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '3', 'title': 'The Ballet Girl', 'region': 'XWW', 'language': 'en', 'types': 'imdbDisplay', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '4', 'title': 'Frk. Letpaataa', 'region': 'DK', 'language': '\\N', 'types': 'imdbDisplay', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '5', 'title': 'La ragazza del balletto', 'region': 'IT', 'language': '\\N', 'types': '\\N', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '6', 'title': 'Das Mädel vom Ballet', 'region': 'DE', 'language': '\\N', 'types': '\\N', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '7', 'title': 'La bailarina del antifaz', 'region': 'ES', 'language': '\\N', 'types': '\\N', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '8', 'title': 'The Ballet Girl', 'region': '\\N', 'language': '\\N', 'types': '\\N', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009415', 'ordering': '9', 'title': 'The Ballet Girl', 'region': 'US', 'language': '\\N', 'types': 'imdbDisplay', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009416', 'ordering': '1', 'title': 'Den bestøvlede Kat', 'region': 'DK', 'language': '\\N', 'types': 'imdbDisplay', 'attributes': '\\N', 'isOriginalTitle': '0'}
{'titleId': 'tt0009416', 'ordering': '2', 'title': 'Mästerkatten i stövlar', 'region': '\\N', 'language': '\\N', 'types': 'original', 'attributes': '\\N', 'isOriginalTitle': '1'}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

参考资料

  • https://www.imdb.com/interfaces/
  • https://docs.python.org/3/library/csv.html

文章来源: coderfix.blog.csdn.net,作者:小雨青年,版权归原作者所有,如需转载,请联系作者。

原文链接:coderfix.blog.csdn.net/article/details/114535922

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。