Extract CSV from Plotly plot

I have a .html file which is a plot made with Plotly. Is there an easy/already implemented way of creating a CSV with the data from this plot?

For example consider this plot (Python):

import plotly.express as px
df = px.data.iris() # iris is a pandas DataFrame
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="petal_length", facet_col='species')
fig.write_html('plot.html',include_plotlyjs='cdn')

where df looks like this

     sepal_length  sepal_width  petal_length  petal_width    species  species_id
0             5.1          3.5           1.4          0.2     setosa           1
1             4.9          3.0           1.4          0.2     setosa           1
2             4.7          3.2           1.3          0.2     setosa           1
3             4.6          3.1           1.5          0.2     setosa           1
4             5.0          3.6           1.4          0.2     setosa           1
..            ...          ...           ...          ...        ...         ...
145           6.7          3.0           5.2          2.3  virginica           3
146           6.3          2.5           5.0          1.9  virginica           3
147           6.5          3.0           5.2          2.0  virginica           3
148           6.2          3.4           5.4          2.3  virginica           3
149           5.9          3.0           5.1          1.8  virginica           3

[150 rows x 6 columns]

and plot.html contains this plot:

enter image description here

If you open the .html file with a text editor you will find all the data shown in the plot spread out in some kind of dictionary or so, probably JavaScript? How can one recover a CSV as close as possible to df from this?

Not looking for a Python exclusive answer, it can be anything. However Python is preferred.