docker安装neo4j及py2neo的使用
生活随笔
收集整理的這篇文章主要介紹了
docker安装neo4j及py2neo的使用
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、安裝
#拉取容器,不要拉最新版的,最新版的有bug
docker pull neo4j:3.4
#拉取可能會(huì)很慢或中斷,可以使用阿里云加速地址
vim /etc/docker/daemon.json
#your_id你自己的阿里云ID號(hào)
--registry-mirror=https://{your_id}.mirror.aliyuncs.com
#啟動(dòng)容器 docker run -it -d -p 7474:7474 -p 7687:7687 neo4j:3.4
二、修改密碼
方法一
進(jìn)入ip:7474,初始賬號(hào)密碼neo4j,登入后修改密碼
方法二 #container容器id docker exec --interactive --tty <container> bin/cypher-shell
三、訪問(wèn)
#http://服務(wù)器的ip:7474
四、py2neo
import pandas as pd
from py2neo import Graph, Node, Relationship, NodeMatcher
#連接neo4j數(shù)據(jù)庫(kù),輸入地址、用戶名、密碼
graph = Graph('http://*.*.*.*:7474', username='neo4j', password='neo4j')
df=pd.read_excel(r"company.xlsx")
#創(chuàng)建公司名節(jié)點(diǎn)
for i in range(df.shape[0]):
company=df.iloc[i, :][0]
node = Node("COMPANY",
company=company,
)
graph.create(node)
#創(chuàng)建公司信息節(jié)點(diǎn)
for i in range(df.shape[0]):
columns = df.columns.to_list()
for j in columns[1:]:
_node = df.iloc[i, :][j]
node = Node("INFO", _node=_node,column=j)
graph.create(node)
#建立公司信息關(guān)系
for i in range(df.shape[0]):
company = df.iloc[i, :][0]
matcher = NodeMatcher(graph)
company_node = matcher.match("COMPANY", company=company).first()
columns=df.columns.to_list()
for j in columns[1:]:
_node=df.iloc[i, :][j]
_node=matcher.match("INFO", _node=_node,column=j).first()
# print(_node,j,company_node)
relationship = Relationship(_node, j, company_node)
graph.create(relationship)
數(shù)據(jù)從天眼查爬取的
數(shù)據(jù)文件:https://pan.baidu.com/s/1g_UYUVpG9KV9T1eA6PReZQ 密碼:e662
五、cypher常用查詢
查詢所有數(shù)據(jù)
match (n) return n
查詢所有數(shù)據(jù),并限制查詢數(shù)據(jù)量
match (n) return n limit 10
查詢某個(gè)標(biāo)簽的所有節(jié)點(diǎn)
match (c:COMPANY) return c limit 10
查詢某個(gè)標(biāo)簽的所有節(jié)點(diǎn)的指定屬性
match (i:INFO) return i.column limit 100
查詢某個(gè)標(biāo)簽的所有節(jié)點(diǎn)的指定屬性
match (i:INFO) return i.column='公司類型' limit 100
match (i:INFO { column:'公司類型' } ) return i
查詢注冊(cè)資金都是60萬(wàn)相關(guān)的公司名
match (i:INFO{_node:'60萬(wàn)人民幣'})--(COMPANY) return i,COMPANY
查詢整個(gè)圖中所存在的關(guān)系
match (i:INFO)-[r]-(company:COMPANY) return type(r)
查詢整個(gè)圖中所存在的關(guān)系并去除結(jié)果中的重復(fù)元素
match (i:INFO)-[r]-(company:COMPANY) return distinct type(r)
查詢2家公司相同的信息
match (c1:COMPANY{company:"上海貫德國(guó)際貿(mào)易有限公司"}),(c2:COMPANY{company:"甘肅谷森新能源科技有限公司"}),r=((c1)-[*..3]-(c2)) return r
總結(jié)
以上是生活随笔為你收集整理的docker安装neo4j及py2neo的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 抖音APP登录分析,Cookie获取
- 下一篇: 内存大升级!iPhone 14搭载A16