我在Django申请中使用“Maigret”模块,在社会媒体上搜索用户名。 单单单单单单单单单单单单方使用子处理操作和获取产出。 但这是这样做的最佳方式吗? 我找不到任何其他解决办法。 以下是我创造的职能。
def SearchNames(request):
if request.method == POST :
try:
data = json.loads(request.body)
name = data.get( name , )
network = data.get( network , )
output = subprocess.run( maigret {} --site {} .format(name, network), shell=True, capture_output=True).stdout
outputs = output.decode("utf-8").split("
")
matching = [s for s in outputs if "Search by username" in s][0]
total_account_found = [int(s) for s in matching.split() if s.isdigit()][0]
print({"accountsFound":total_account_found, "network":network})
return JsonResponse({"accountsFound":total_account_found, "network":network}, safe=False)
except:
return JsonResponse({ error : Error occurred while searching for username }, status=400)
return JsonResponse({ error : Invalid request }, status=400)
我想知道,除了分处理之外,是否还有更好的办法使用马格雷特。