Будет более полезно, если вы не покажете, что содержит print(response.text)
, а только то, что содержит response.text
, поскольку функция печати выполняет некоторое форматирование для удобства чтения человеком.
Но я предполагаю, что response.text
- это всего лишь одна строка, которая выглядит следующим образом:
'ResponseBegin\nName|Age|Gender|Country\n"ABC"|23|M|USA\n"ABCD"|21|F|CAN\nResponseEnd'
Обратите внимание на \n
, который является символом «новой строки».
Есть несколько способов решить эту проблему, но самый простой (наименьшее количество строк кода), я думаю, это экспортировать его в файл CSV, а затем прочитать его:
with open('mydf.csv', 'w') as fh:
fh.write(response.text)
import pandas as pd
df = pd.read_csv('mydf.csv', sep='|', skiprows=1, skipfooter=1)
Вы можете узнать больше о read_csv
для всех его удобные инструменты, но здесь я использую:
sep
: то, что нужно использовать в качестве разделителя, |
в вашем случае skiprows
/ skipfooter
: количество строк в начале или в конце, которые нужно пропустить