写在前面的话
趴下继续睡。昨天,在图书馆遇见一哥们。我问他怎么11点了才来,他说,我比较随性,主打一个出其不意。我要他展开说说。他说:“我给你讲一个事,之前老家人说让我介绍工作,我满口答应,结果之后的某一天,老家人过来了,推门进入,我当时困的不行,正趴在桌子上睡,他们推醒我,我看了他们一眼,趴下继续睡。老家人气愤的摔门而去;我醒来老妈责备我说,你之前答应过的,怎么这个态度。我给老妈说,答应的事一定要办吗,谁规定的。后来,哥们只要回村,就会招人骂,我慢慢也习惯了”。再后来,哥们受不了公司约束,出来自己做,但毫无章法,有时连着三天不睡,有时连睡三天,最后,做直播,写好的哪天几点直播,结果没开播,但一些粉丝就喜欢他这种出其不意,觉得有趣,给别人带来快乐,他也赚到了钱。给我的感觉是这哥们活出了真我,是个奇人。
[336]-------底部有张生活照片
【关键词】python、neo4j、列表搜索、获取标签
一、python+neo4j接口相关
1.列表搜索
描述,对属性列表,建个搜索,像节点id太多了,不搜索基本不行。
开工:
第一步:搜索关键字-1357
总共六项,如下:
{
"type":"node_labels",
"type":"entity_type",
"type":"source_id",
"type":"description",
"type":"id",
"type":"relation_labels",
}注:应该看 "type":"relation_labels",修改程序如下:
图5a-1
注:这个也是用contains搞一下就可以。
第二步:上线
把代码上线,并改下接口文档
2.获取标签
描述:现在需要获取下库里的所有节点标签,之前是写到一个json里,需要优化一下。
开工:
第一步:时间段
【1528-1540】【0927-0940】【1115-1120】
第二步:获取-1050
写个程序获取一下,程序如下:
CALL db.labels() YIELD label
WHERE label = 'Person'
RETURN label
注:可以参考这个。
修改程序如下:
@lru_cache(maxsize=None)
def getLabelsDataUseCache(keyword,limit):
res_data = [{"id":"id"}]
sql = """
CALL db.labels() YIELD label
WHERE label CONTAINS '"""+keyword+"""'
WITH DISTINCT label AS distinct_column_name
limit """+limit+"""
RETURN {id: distinct_column_name} AS column_data;
"""
# writeMyLog(sql,get_caller_line_number()+'sql-getLabelsDataUseCache')
res_data = getSelectData(sql)
r_data=[]
for record in res_data:
r_data.append(record['column_data'])
if r_data:
res_data = r_data
return res_data
注:这个里面,使用了缓存,因为线上是2.6,所以,使用了旧的缓存方法@lru_cache(maxsize=None)。
第三步:测试
测试还可以
3.颜色处理
描述:现在返回前端数据时,要给个节点颜色,颜色来源是一个json文件,要对不同的节点entity_type,标注不同的颜色,现在需要优化一下。当前现状,截图如下:
图5a-2
开工:
第一步:时间段
【1115-1120】
第二步:实体
看下有多少个实体,语句如下:
MATCH (n)
WITH DISTINCT n.entity_type AS distinct_column_name
limit 10000
RETURN {id: distinct_column_name} AS column_data;
注:太多了,上千个数据,截图如下:
图5a-3
注:选择前七个就可以,其它先不管,修改如下:
图5a-4
注:先这样。
第三步:测试
测试还可以
二、php-laravel相关
1.运行项目之数据库
描述:现在数据库能连上,但建表出问题。截图如下:
图5b-1
分析:应该是字符太长了,处理一下。
开工:
第一步:处理-1934
要了个数据库,可以了,截图如下:
图5b-2
注:破解下登录。
第二步:破解登录-2024
打个公共日志,先找个公共方法,如下:
图5b-3
注:这个在helpers里面。破解密码如下:
图5b-4
注:这个密码在哪验证的呢,神奇了。
第三步:跳过验证(0-20)
跳过验证不成功,密码也暂停一下。因为对方给了。接下来,后端生成邀请码,前端请求,提示又使用,看下为什么不行。
明明未使用。
2.邀请码过期
描述:后台生成邀请码,前台未使用,就提示已使用。截图如下:
图5b-5
开工:
第一步:时间段
【1608-1620】【1214-1230】【1652-1730】
第二步:看下前台验证代码
第三步:测试
三、数据抽取相关
1.运行项目
描述:有一个项目,开源框架,需要运行一下,它的功能是能进行数据抽取。给出一个pdf,能提取里面的文字到一个txt。
开工:
第一步:时间段
【0951-1020】
第二步:下载项目
项目地址:
https://github.com/Unstructured-IO/unstructured
clone地址:
https://github.com/Unstructured-IO/unstructured.git
第三步:运行项目
安装pdf扩展,已完成,转pdf代码如下:
import unstructured
from unstructured.partition.auto import partition
elements = partition("paper.pdf")
# 打印提取的元素
for element in elements:
print(element)
注:运行结果如下:
图5c-1
注:接下来,解析下一篇文章。
2.解析文章
描述:使用unstructure主要是为了解决文章带目录,按目录章节解析的问题,现在找一篇带目录的解析一下。
开工:
第一步:时间段
【1046-1100】
第二步:找一篇文章
找了一个pdf,截图如下:
图5c-2
注:运行报错,如下:
E:\16python\data_get1127\data_get_local>python 1.py
Traceback (most recent call last):
File "D:\Python\Python39\lib\site-packages\pdf2image\pdf2image.py", line 581, in pdfinfo_from_path
proc = Popen(command, env=env, stdout=PIPE, stderr=PIPE)
File "D:\Python\Python39\lib\subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "D:\Python\Python39\lib\subprocess.py", line 1420, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "E:\16python\data_get1127\data_get_local\1.py", line 4, in <module>
elements = partition("05_xiao.pdf")
File "D:\Python\Python39\lib\site-packages\unstructured\partition\auto.py", line 337, in partition
elements = partition_pdf(
File "D:\Python\Python39\lib\site-packages\unstructured\documents\elements.py", line 581, in wrapper
elements = func(*args, **kwargs)
File "D:\Python\Python39\lib\site-packages\unstructured\file_utils\filetype.py", line 725, in wrapper
elements = func(*args, **kwargs)
File "D:\Python\Python39\lib\site-packages\unstructured\file_utils\filetype.py", line 683, in wrapper
elements = func(*args, **kwargs)
File "D:\Python\Python39\lib\site-packages\unstructured\chunking\dispatch.py", line 74, in wrapper
elements = func(*args, **kwargs)
File "D:\Python\Python39\lib\site-packages\unstructured\partition\pdf.py", line 209, in partition_pdf
return partition_pdf_or_image(
File "D:\Python\Python39\lib\site-packages\unstructured\partition\pdf.py", line 339, in partition_pdf_or_image
elements = _partition_pdf_or_image_with_ocr(
File "D:\Python\Python39\lib\site-packages\unstructured\partition\pdf.py", line 860, in _partition_pdf_or_image_with_ocr
for page_number, image in enumerate(
File "D:\Python\Python39\lib\site-packages\unstructured\partition\pdf_image\pdf_image_utils.py", line 400, in convert_pdf_to_images
info = pdf2image.pdfinfo_from_path(filename)
File "D:\Python\Python39\lib\site-packages\pdf2image\pdf2image.py", line 607, in pdfinfo_from_path
raise PDFInfoNotInstalledError(
pdf2image.exceptions.PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH?
注:这个表示需要安装一个Poppler,需要自己去找。
四、生活照片
拍摄于2025年12月6日,18:22:24,大宝过生日时拍的,当时,大宝8岁。后来我想了想,这哥们歪打正着的成功了,一身明牌,很气派。他抓住了网红千篇一律的同质感,把自己的个性打出来,粉丝还就爱这一口,也可以说是一个畸形的存在。但很多时候,他这种不顾别人感受的做法,是要遭到反噬的,比如:他和一个老板约好,下周三晚上8点会面谈事,结果他没去,也没提前通知,也不说明原因,用他的话说,约好就一定要去啊。那可能以后,那个老板就不理他了。所说,还是不建议学他,风险太大。
图5d-1
五、昨日花销
昨日花销截图如下:
图5e-1
《本文完》