息怒,要是你以前的名『燕过留声』,那就有了。

nostr:npub1ccjq3jwtlhwv358r0g6xglxhc5zg9f9sex63xxl62ut6fl5efu4sysmr09 是按用户名,ID以及或者其它个人档案资料中是否包含汉字来判断收录的。因日文中有个别汉字,因此不少日本用户都包含进来了,建议可以再加一条保含中文且不含日文的才收录。

因你用@YGLS 且个人资料中无中文汉字,故没被其程序收录。

nostr:nevent1qqst7d7c3qpljpcc996huzys0pqdrx4g7sw5922wuvg0w58npc845fspr3mhxue69uhh2mnfwejhyum99ehx7um5wf5kx6pwd3skueqzyrd3rveqp8v3fhtkhkgyhznrvcnarkgy8u4yl8k27640shg9chm67qcyqqqqqqg9vg7ac

Reply to this note

Please Login to reply.

Discussion

下次把YGLS的ID安排到第一个

几位大佬给你安排上了 nostr:npub1mvgmxgqfmy2d6a4ajp9c5cmxylgajppl9f8eajhk4tu96pw977hsmwh70c

这下开心了吧

You

定义一个函数,检查字符串中是否包含中文字符

def contains_chinese(s): for ch in s: if u’\u4e00’ <= ch <= u’\u9fff’: return True return False 这个判断中文的函数有缺陷,会把日文字符判断为中文,如何优化

AI

要优化这个函数以排除日文字符,您可以使用unicodedata库来区分中文和日文字符。这是一个修改过的函数:

import unicodedata

def contains_chinese(s):

for ch in s:

if u’\u4e00’ <= ch <= u’\u9fff’ and ‘CJK UNIFIED IDEOGRAPH’ in unicodedata.name(ch):

return True

return False

这个函数仍然会检查字符是否在中文字符范围内,但它还会使用unicodedata.name()来确保字符是中文字符(即名称包含“CJK UNIFIED IDEOGRAPH”)。这样,如果字符是日文字符,它就不会被误判为中文字符。

我先按这个算法用已经筛出的id(1200+)测试一下

中文检测算法优化

AI

为了实现这个需求,我们可以在contains_chinese()函数中添加一个条件来检查字符串是否包含日文片假名。这里是一个修改后的版本:

import unicodedata

def contains_chinese(s):

has_chinese = False

for ch in s:

if u’\u4e00’ <= ch <= u’\u9fff’ and ‘CJK UNIFIED IDEOGRAPH’ in unicodedata.name(ch):

has_chinese = True

if u’\u30A0’ <= ch <= u’\u30FF’ or u’\uFF65’ <= ch <= u’\uFF9F’: # 检查日文片假名

return False

return has_chinese

#测试算法

text = “鉄道ファン/鉄道路線擬人化一次創作 #HighSpeedMetropoliStars / #riramemo #riramemotrip / 談論風発”

print(contains_chinese(text)) # 输出 False

这个修改后的函数首先检查字符串中是否有中文字符,并用变量has_chinese来记录。接着,它会检查字符串中是否有日文片假名。如果发现日文片假名,函数将立即返回False。最后,如果没有日文片假名且存在中文字符,则返回True。

ygls 你的id在rbr.bio除了元数据没中文,还有个问题是中继数据也读取不了:

https://rbr.bio/db11b32009d914dd76bd904b8a636627d1d9043f2a4f9ecaf6aaf85d05c5f7af/writerelays.json

成功脱籍一次。。。