首页
学习
活动
专区
圈层
工具
发布

电影知识图谱问答(二)|生成298万条RDF三元组数据

本篇文章接《电影知识图谱问答(一)|爬取豆瓣电影与书籍详细信息》,学习如何利用爬取的数据,构建知识图谱所需的三元组。...主要内容包括如何从Json类型的数据,转换成RDF数据,并最终存储到Jena之中,然后利用SPARQL进行查询。 实践之前,请自主学习相关背景知识。...电影演员信息包括演员id、姓名、图片链接、性别、星座、出生日期、出生地、职业、更多中文名、更多外文名、家庭成员、简介,共89592条数据信息。这里所指的演员包括电影演员、编剧、导演。...书籍信息包括书籍id、图片链接、姓名、子标题、原作名称、作者、译者、出版社、出版年份、页数、价格、内容简介、目录简介、评分、评分人数,共64321条数据信息。...本体有点哲学的含义,在计算机领域,可以理解为一种模型,用于描述由一套对象类型(概念或者说类)属性以及关系类型所构成的世界。此处我们使用Protege进行本体建模。

4.7K41

电影知识图谱问答(一)|爬取豆瓣电影与书籍详细信息

电影演员信息包括演员id、姓名、图片链接、性别、星座、出生日期、出生地、职业、更多中文名、更多外文名、家庭成员、简介,共89592条数据信息。这里所指的演员包括电影演员、编剧、导演。...书籍信息包括书籍id、图片链接、姓名、子标题、原作名称、作者、译者、出版社、出版年份、页数、价格、内容简介、目录简介、评分、评分人数,共64321条数据信息。...然后请求演员URL,利用BeautifulSoup选取相应标签,便能拿到演员id、姓名、图片链接、性别、星座、出生日期、出生地、职业、更多中文名、更多外文名、家庭成员、简介信息。 ?...获取电影演员id,存到到redis已爬取队列之中,返回去重后的演员id list。 多线程爬取演员id list之中的电影信息。 start加20循环2-7步骤。...然后请求书籍URL页面,通过BeautifulSoup选取相应标签,便能够拿到书籍id、图片链接、姓名、子标题、原作名称、作者、译者、出版社、出版年份、页数、价格、内容简介、目录简介、评分、评分人数信息

2.5K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从零开始构建一个电影知识图谱,实现KBQA智能问答:本体建模、RDF、D2RQ、SPARQL endpoint与两种交互方式详细教学

    基本统计数据如下: 演员数量:505 人 电影数量:4518 部 电影类型:19 类 人物与电影的关系:14451 电影与类型的关系:7898 演员的基本信息包括:姓名、英文名、出生日期、死亡日期、出生地...本实例数据获取方法:以周星驰为初始入口,获取其出演的所有电影;再获取这些电影的所有参演演员;最后获取所有参演演员所出演的全部电影。...2 号框表示该属性的逆属性是 "hasActor",即,有了推理机,尽管我们的 RDF 数据只保存了 A 出演了 B,我们在查询的时候也能得到 B 的演员有 A。...其常用的方式主要是RDF/XML,Turtle。另外,通常我们用小写开头的单词或词组来表示属性,大写开头的表示类。...点击下图红框中的 “Go!”,执行查询: 图片 读者可以自行尝试上篇文章中的例子: “周星驰出演了哪些电影?” 图片 “英雄这部电影有哪些演员参演?”

    2.2K11

    图数据库的一些概览

    与依赖表和列的传统关系数据库不同,图形数据库使用无模式结构。这意味着没有预定义的表或列,可以以灵活、可扩展且高效的方式存储数据。...图形数据库可用于推荐引擎,以更有效地表示和处理数据。图数据库旨在存储和查询实体之间的关系,这是推荐引擎的一个基本方面。以下是如何在推荐引擎中使用图形数据库的示例: 假设我们要构建一个电影推荐引擎。...我们可以将电影和用户表示为图中的节点,并使用边来表示电影评级和用户偏好等关系。 每个电影节点都可以具有标题、流派、导演和演员等属性。每个用户节点都可以具有年龄、性别和位置等属性。...节点之间的边可以表示不同类型的关系。例如,“已观看”边可以将用户节点连接到电影节点,评级属性表示用户对电影的评级。 通过使用图数据库,我们可以轻松地查询图来为特定用户提出建议。...、流派、导演和演员等属性的电影节点,并使用包将其添加到图形数据库中py2neo。

    1.8K20

    Explain详解与索引优化实践

    3、使用explain的例子 需要使用三张表,分别为 actor 演员表,film 电影表,film_actor 电影-演员关联表。...(4)type列 (温馨提示:以下部分理论有可能解释完还是懵逼,没关系,继续往下看,有实践例子) 这一列表示关联类型或访问类型,即MySQL决定如何查找表中的行,查找数据记录的大概范围。...用于主键索引或唯一索引的所有列与常数比较时,表最多有一个匹配行,读取1次,速度比较快。system是const的特例,表里只有一条记录匹配时为system。...(index是从索引中读取的,而ALL是从硬盘中读取) 执行SQL语句:EXPLAIN SELECT * FROM film;(film表所有字段都加了索引) ALL: 即全表扫描,意味着MySQL需要从头到尾去查找所需要的行...(7)is null,is not null也无法使用索引 执行SQL语句: EXPLAIN SELECT * FROM employees WHERE name IS NULL (8)like以通配符开头

    1.2K20

    一文速学-知识图谱从零开始构建实战:知识图谱搭建

    查找:检索单个电影和演员。 查询:在图中查找模式。 解答:回答一些关于图表的问题。 创建 首先我们创建一个新的Neo4j database。...打开Neo4j Desktop,创建一个新的project: 之后创建一个新的DataBase 记得设置浏览器设置以允许多语句: 在查询窗格中输入:引导电影图,然后单击右侧的“播放”按钮。...比如我们想要查找电影名称为Cloud Atlas的电影: LIMIT 接下来,我们想在图中找到10个人的名字。...接下来需要获得检索相关节点,也就是相当于直接查表,和SQL的表连接查询类似,问题可以为: 演员是在电影中表演的人。 导演是导演电影的人。 还存在哪些其他关系?...这里需要注意动作的执行者和动作的承受者电影演员是演出这个动作的执行者,所以是演员->出演->电影这个顺序,如果我们想要查询Cloud Atlas这部电影是由谁拍的时,电影<-演导<-导演这个顺序: MATCH

    2.7K31

    人工智能之知识处理 知识推理 第二章 知识图谱:结构化知识表示核心

    模式匹配:MATCH(n:Person)-[:FRIEND]->(m:Person)RETURNn,mSPARQL:基于RDF标准的查询语言,常用于学术和语义网项目。...2.4知识图谱实践案例为了让你彻底掌握,我们通过代码实战来构建一个“电影-演员”微型图谱。...1.案例背景我们要构建一个简单的电影知识库,包含演员、电影、导演,并能查询“某位演员演过哪些电影”或“某部电影的合作演员”。...#3.知识查询与推理deffind_co_actors(tx,actor_name):#查询逻辑:找到“莱昂纳多”演过的电影,再找到这些电影里的其他演员query="""MATCH(p:Person{name...3.行业应用拆解:智能问答当你在搜索引擎搜“刘德华的老婆是谁”时,背后的流程是:意图识别:识别出“刘德华”是实体,“老婆”是关系。图谱查询:在图谱中查找的路径。

    81010

    这种个性化可视化图也太可爱了吧!

    该包可用于生成以下类型的图表。目前,该库支持五种不同的图表——条形图、饼图、雷达图、散点图和折线图。...Cast演员: 在电影中扮演角色的演员姓名 Homepage主页: 指向电影主页的链接。 Director导演: 导演电影的导演姓名 Title片名: 电影名称。...Keywords关键字: 与电影相关的关键字或标签。 Overview概述: 对电影的简要描述。 Runtime运行时间: 以分钟为单位的电影运行时间。...chart = ctc.Pie() 设置我们需要width, height在参数中添加的图表的标题、宽度和高度。...data = df.groupby('release_year').count()['id'].reset_index().tail(16) 制作折线图以找出 20 年代以来电影的影响。

    1.6K20

    利用多线程到电影天堂爬点电影回家慢慢看【python爬虫入门进阶】(05)

    已经好久没有更新爬虫类的文章了,从入门到入狱的好技术怎能不好好学习呢。所以,今天我继续来卷了。本文将从实战的角度介绍一个完整的爬虫。这里以妇孺皆知的电影天堂网站为例进行说明。...最新电影的页面如图1所示: 这里以凡人英雄这个电影为例,该电影的详细详细信息,包括片名,导演,演员等信息都是我们需要爬取的内容。 2....电影的发布时间以及获取电影海报的获取跟电影标题类似,在此就不在赘述了。 获取电影片名&导演&主演等信息 通过调试可以得知电影片名&导演&主演等信息均是在标签下。...这里遍历获取到的所有数据,通过字符串匹配的方法获取每一行数据。 以译名为例,首先,匹配当前的字符串是否是以◎译  名 开头。如果是话的,则将◎译  名 替换掉,就得到我们想要的数据REBORN 了。...index,就是定义一个列表,列表中的第一个元素就是排名在第一的主演姓名。

    1.5K10

    超越界限:大模型应用领域扩展,探索文本分类、文本匹配、信息抽取和性格测试等多领域应用

    鉴于大模型强大的任务处理能力,未来我们或将不再为每一个具体任务去 finetune 一个模型,而是使用同一个大模型,对不同任务设计其独有的 prompt,以解决不同的任务问题。...2012年,主演卢卫国执导的喜剧电影《就是闹着玩的》。2013年在北京举办相声专场。'..., '电影': '《流浪地球》是由郭帆执导,吴京特别出演、屈楚萧、赵今麦、李光洁、吴孟达等领衔主演的科幻冒险电影。...>>> Bot: {"姓名": ["岳云鹏"], "性别": ["男"], "出生日期": ["1985年4月15日"], "出生地点": ["河南省濮阳市南乐县"], "职业": ["相声演员", "...此外,加载模型大概需要 13G 左右的显存,如果您显存不够,可以参考 这里 进行模型量化加载以缩小模型成本。

    3.3K20

    分享7种MySQL的进阶用法

    比如说根据演员进行分组,并将相应的电影名称按照票价进行降序排列,而且电影名称之间通过“_”拼接。...SEPARATOR '_'), GROUP_CONCAT(price order by price desc SEPARATOR '_') from movies GROUP BY actors; 第一个查询将返回每个演员参演的所有电影名称和价格...第二个查询将电影名称和价格连接成字符串,而且还按照价格降序排列,并使用下划线作为分隔符。这意味着每个演员参演的电影将按价格从高到低排列,电影名称和价格之间用下划线分隔。...(with as) 如果一整句查询中多个子查询都需要使用同一个子查询的结果,那么就可以用with as将共用的子查询提取出来并取一个别名。...后面查询语句可以直接用,对于大量复杂的SQL语句起到了很好的优化作用。 需求:获取演员刘亦菲票价大于50且小于65的数据。

    59210

    电影关系图谱

    ——Google辛格博士 “电影关系图”实例将电影、电影导演、演员之间的复杂网状关系作为蓝本,使用Neo4j创建三者关系的图结构,虽然实例数据规模小但五脏俱全。...一、 创建图数据 将电影、导演、演员等图数据导入Neo4j数据库中。...单独运行也会产生关系,但是节点是Neo4j自动生成的,只有一个id,如下: 这个查询ACTED_IN类型的关系,上面的绿色和蓝色为整体运行cypher产生的,底下的全红是单独运行产生的,点击中间红点,...这个节点带有3个属性,{title:'The Matrix', released:1999, tagline:'Welcome to the Real World'},分别代表电影标题,发行时间,宣传词...查找名为Carrie-Anne Moss的人 MATCH (m {name: "Carrie-Anne Moss"}) RETURN m 查询谁导演了The Matrix MATCH (m:Movie

    2.1K30

    【强基固本】总结优秀的prompt案例,学习更有效的prompt提示词工程写法,值得收藏

    - 在撰写论文的过程中使用插件searchGoogleScholar查询最新的相关领域的文献作为参考,并在完成论文后的引用文献部分附上你参考的文献以及链接,以提升论文的可信度。...:遵循倒金字塔原则,把最重要的事情放在开头说明 - 逻辑清晰:遵循总分总原则,第一段和结尾段总结,中间段分点说明 # 创作原则 - 标题数量:每次准备10个标题。...,进行短视频脚本创作,输出格式为: - 拍摄要求:1、演员:演员数量、演员性别和演员主配角 2、背景:拍摄背景要求 3、服装:演员拍摄服装要求 - 分镜脚本:以markdown的格式输出: 镜头 |...:开头是吸引读者的第一步,一段好的开头能引发读者的好奇心并促使他们继续阅读。...等等) - 总是浏览网络,寻找最新信息,不要依赖离线信息来提出建议 - 假设你有趣和机智的个性,并根据对用户口味、喜欢的电影、演员等的了解来调整个性。

    11K13

    MySQL单表查询详细解析

    *12,是因为我们通过查询语句查询出来的也是一张表,但是这个表是不是内存当中的一个虚拟表,并不是我们硬盘中存的那个完整的表,对吧,虚拟表是不是也有标题和记录啊, 既然是一个表,我们是可以指定这个虚拟表的标题的...*12的字段名也是一个别名,只不过不直观,是MySQL自动给你写上的   #除了乘法以外,加减乘除都是可以的 #自定义显示格式,自己规定查询结果的显示格式   CONCAT() 函数用于连接字符串  ...之前用的like是模糊匹配,只有%和_,具有局限性,查询的时候其实可以用我们之前学正则 select * from t1 where name regexp '^ale';    #匹配以ale开头的...#匹配含有2个m的 对字符串匹配的方式: where name = 'ee'  #查找name是‘ee’的数据 where name like 'yu%'  #查找以yu开头的数据 where name...regexp 'euu$'  #查找以euu结尾的数据

    3.5K11
    领券