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