Files
sisvietnamvn_01/sisvietnamvn_main/get_specialties.py
T

34 lines
1.3 KiB
Python

import json, re
with open('/home/x79/sisvietnamvn_01/BV_DHYD_HCM/Đội ngũ bác sĩ UMC.html', 'r', encoding='utf-8') as f:
text = f.read()
match = re.search(r'<script id="__NEXT_DATA__".*?>(.*?)</script>', text)
if match:
data = json.loads(match.group(1))
props = data['props']['pageProps']
# The specialties might be in pageProps or initialProps
# Let's dump all keys to see where it might be
def find_key(obj, target, path=""):
if isinstance(obj, dict):
for k, v in obj.items():
if k == target:
print(f"Found {target} at {path}.{k}")
if isinstance(v, list) and len(v) > 0 and 'name' in v[0]:
print("Names:", [item.get('name') for item in v[:5]])
find_key(v, target, path + "." + k)
elif isinstance(obj, list):
for i, item in enumerate(obj):
find_key(item, target, f"{path}[{i}]")
find_key(data, 'departments')
find_key(data, 'specialties')
# just dump the text of the json and grep for "Da liễu"
# Or just use regex to extract the list directly
deps_match = re.search(r'\[{"id":\d+,"name":"Khoa.*?}\]', text)
if deps_match:
print("Regex match for deps:")
print(deps_match.group(0)[:500])