如果其他人也遇到同样的问题,我虽然不是很优雅地解决了问题,但是我需要数据。JSON过于嵌套且难以解析,因此现在我仅从数据中读取所需的字段。
import jsonimport requestsimport csvdef main(): # initialize variables output_file = 'result_meetup.csv' api_key = "YOUR_API_KEY" params = {'key': api_key} url_path = 'http://api.meetup.com/pro/:URLNAME/groups' # get data from API, parse to JSON data = requests.get(url_path, params=params) data_parsed = data.json() length_data = len(data_parsed) - 1 data_to_file = open(output_file, 'w', newline='') csv_writer = csv.writer(data_to_file, delimiter=";") csv_writer.writerow(["id","name","city","country","member count","average age","founded_date","past_rsvps","rsvps_per_event","repeat_rsvpers","gender_unknown","gender_female","gender_male","gender_other"]) for i in range(0, length_data): meetup = data_parsed[i] id = meetup['id'] name = meetup['name'] city = meetup['city'] country = meetup['country'] member_count = meetup['member_count'] average_age = meetup['average_age'] founded_date = meetup['founded_date'] past_rsvps = meetup['past_rsvps'] rsvps_per_event = meetup['rsvps_per_event'] repeat_rsvpers = meetup['repeat_rsvpers'] gender_unknown = meetup['gender_unknown'] gender_female = meetup['gender_female'] gender_male = meetup['gender_male'] gender_other = meetup['gender_other'] csv_writer.writerow([id,name,city,country,member_count,average_age,founded_date,past_rsvps,rsvps_per_event,repeat_rsvpers,gender_unknown,gender_female,gender_male,gender_other]) data_to_file.close()if __name__ == "__main__": main()


