Мне необходимо создать class без использования библиотек, а только с использованием магических методов, который можно будет импортироваться в pandas.DataFrame, точно так же как обычный словарь (или dataclass).
Пример как импортируется словарь (dict) в dataframe:
import pandas as pd
site_1 = dict(title='Купить телевизор', description='Телевизоры по низкой цене')
site_2 = dict(title='Услуги юриста', description='Адвокат спешит к вам')
df = pd.DataFrame([site_1, site_2])
print(df)
На выходе
| title | description
-|----------------| ----------------------
0|Купить телевизор| Телевизоры по низкой цене
1|Услуги юриста | Адвокат спешит к вам
Пример как импортируется dataclass в dataframe:
from dataclasses import dataclass
import pandas as pd
@dataclass
class URL:
title: str = None
description: str = None
site_1 = URL(title='Купить телевизор', description='Телевизоры по низкой цене')
site_2 = URL(title='Услуги юриста', description='Адвокат спешит к вам')
df = pd.DataFrame([site_1, site_2])
print(df)
На выходе мы получаем таблицу с именованными столбцами:
На выходе
| title | description
-|----------------| ----------------------
0|Купить телевизор| Телевизоры по низкой цене
1|Услуги юриста | Адвокат спешит к вам
Пример как импортируется обычный класс без методов:
import pandas as pd
class URL_2:
def __init__(self, title=None, description=None):
self.title = title
self.description = description
site_1 = URL_2(title='Купить телевизор', description='Телевизоры по низкой цене')
site_2 = URL_2(title='Услуги юриста', description='Адвокат спешит к вам')
df = pd.DataFrame([site_1, site_2])
print(df)
На выходе мы получаем непонятную таблицу
На выходе
#| 0
-|---------------
0|<__main__.URL_2 object at 0x7fa4d9622d30>
1|<__main__.URL_2 object at 0x7fa4d84fdf10>