Намного проще получить доступ к ответу json, который отображает эти данные.
import requests
url = 'http://www.smcasurat.org/Member/DirecotrySerach'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
payload = {
'type': 'ALL',
'value': '',
'pageindex': '1',
'pagesize': '9999'}
jsonData = requests.post(url, headers=headers, params=payload).json()
for member in jsonData['Data']:
name = member['FirstName'] + ' ' + member['LastName']
qual = member['MemberDegree'].strip()
email = member['Email1']
try:
contact = '\n'.join([v.strip() for k, v in member['Clinicinfo'][0].items() if v != ''])
except:
contact = '-'
print('%s\n%s\n%s\n%s\n' %(name, qual, contact, email))
Чтобы увидеть вывод:
for member in jsonData['Data']:
name = member['FirstName'] + ' ' + member['LastName']
qual = member['MemberDegree'].strip()
try:
contact = member['Clinicinfo'][0]['Phone1']
except:
contact = '-'
email = member['Email1']
print('%s\n%s\n%s\n%s\n' %(name, qual, contact, email))
Или вы можете использовать json_normalize
и преобразовать его в датафрейм
from pandas.io.json import json_normalize
df = json_normalize(jsonData['Data'])
Если вы хотите просмотреть файл, просто используйте его и откройте в блокноте ++
import json
with open('C:/data.json', 'w') as outfile:
json.dump(jsonData, outfile, indent=4)