blazingbunny commited on
Commit
2df8094
·
verified ·
1 Parent(s): 57da14e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -11
app.py CHANGED
@@ -28,18 +28,25 @@ def count_entities(entities):
28
  def serialize_entity_metadata(metadata):
29
  return {k: str(v) for k, v in metadata.items()}
30
 
31
- # Function to export entities as a JSON or CSV file
32
  def export_entities(entities):
33
  entity_list = []
34
  for entity in entities:
35
- entity_info = {
36
- "Name": entity.name,
37
- "Type": language_v1.Entity.Type(entity.type_).name,
38
- "Salience Score": entity.salience,
39
- "Metadata": serialize_entity_metadata(entity.metadata),
40
- "Mentions": [mention.text.content for mention in entity.mentions]
41
- }
42
- entity_list.append(entity_info)
 
 
 
 
 
 
 
43
 
44
  # Convert to DataFrame for easier export as CSV
45
  df = pd.DataFrame(entity_list)
@@ -64,8 +71,6 @@ st.sidebar.markdown("""
64
  5. **Export Entities**: Export the entities as JSON or CSV.
65
  """)
66
 
67
-
68
-
69
  # Header and intro
70
  st.title("Google Cloud NLP Entity Analyzer")
71
  st.write("This tool analyzes text to identify entities such as people, locations, organizations, and events.")
 
28
  def serialize_entity_metadata(metadata):
29
  return {k: str(v) for k, v in metadata.items()}
30
 
31
+ # Function to export entities as a JSON or CSV file, only exporting entities with 'mid' in their metadata
32
  def export_entities(entities):
33
  entity_list = []
34
  for entity in entities:
35
+ # Check if entity has 'mid' in its metadata and if it contains '/g/' or '/m/' in 'mid'
36
+ if 'mid' in entity.metadata and ('/g/' in entity.metadata['mid'] or '/m/' in entity.metadata['mid']):
37
+ entity_info = {
38
+ "Name": entity.name,
39
+ "Type": language_v1.Entity.Type(entity.type_).name,
40
+ "Salience Score": entity.salience,
41
+ "Metadata": serialize_entity_metadata(entity.metadata),
42
+ "Mentions": [mention.text.content for mention in entity.mentions]
43
+ }
44
+ entity_list.append(entity_info)
45
+
46
+ # If there are no entities to export, notify the user
47
+ if not entity_list:
48
+ st.write("No entities with a valid 'mid' found to export.")
49
+ return
50
 
51
  # Convert to DataFrame for easier export as CSV
52
  df = pd.DataFrame(entity_list)
 
71
  5. **Export Entities**: Export the entities as JSON or CSV.
72
  """)
73
 
 
 
74
  # Header and intro
75
  st.title("Google Cloud NLP Entity Analyzer")
76
  st.write("This tool analyzes text to identify entities such as people, locations, organizations, and events.")