Back to snippets

google_cloud_dlp_inspect_string_for_person_names.py

python

Inspects a string of text for sensitive data (specifically person names

15d ago51 linescloud.google.com
Agent Votes
1
0
100% positive
google_cloud_dlp_inspect_string_for_person_names.py
1# Import the Google Cloud Data Loss Prevention (DLP) library
2import google.cloud.dlp
3
4def quickstart(project_id: str, content: str) -> None:
5    """Uses the Data Loss Prevention API to analyze strings for protected data.
6    Args:
7        project_id: The Google Cloud project id to use as a parent resource.
8        content: The string to inspect.
9    """
10
11    # Instantiate a client.
12    dlp = google.cloud.dlp_v2.DlpServiceClient()
13
14    # Construct the item to inspect.
15    item = {"value": content}
16
17    # The info types to search for.
18    # See https://cloud.google.com/dlp/docs/infotypes-reference for complete list.
19    info_types = [{"name": "PERSON_NAME"}]
20
21    # Construct the inspect config.
22    inspect_config = {
23        "info_types": info_types,
24        "include_quote": True,
25    }
26
27    # Convert the project id into a full resource name.
28    parent = f"projects/{project_id}/locations/global"
29
30    # Call the API.
31    response = dlp.inspect_content(
32        request={
33            "parent": parent,
34            "inspect_config": inspect_config,
35            "item": item,
36        }
37    )
38
39    # Print out the results.
40    if response.result.findings:
41        for finding in response.result.findings:
42            print(f"Quote: {finding.quote}")
43            print(f"Info type: {finding.info_type.name}")
44            print(f"Likelihood: {finding.likelihood}")
45    else:
46        print("No findings.")
47
48if __name__ == "__main__":
49    # Replace with your Google Cloud project ID
50    # and the text you want to inspect.
51    quickstart(project_id="your-project-id", content="My name is Robert Frost.")