尝试
import json
import re
import pandas as pd
import requests
from bs4 import BeautifulSoup
url = "https://docs.google.com/spreadsheets/d/e/2PACX-1vQG9TYlv8_LpCvO7EI3Y3s8MoxQEfOHTd3-EqccN5PoeHcdxraxZC0y8UWFx_2NnogVIIuk1i-phvFe/pubchart?oid=813038046&format=interactive"
html_text = requests.get(url).text
data = re.search(r"'chartJson': '(.*?)',", html_text).group(1)
data = re.sub(r"\\x(..)", lambda g: chr(int(g.group(1), 16)), data)
data = json.loads(data)
# print(json.dumps(data, indent=4))
df = pd.DataFrame(
[(r["c"][0]["f"], r["c"][1]["f"]) for r in data["dataTable"]["rows"]],
columns=["Date", "Value"],
)
print(df)
打印:
Date Value
0 07-Jan-2018 1
1 14-Jan-2018 1.0396913
2 21-Jan-2018 0.84593582
3 28-Jan-2018 0.78201258
4 04-Feb-2018 0.71397352
5 11-Feb-2018 0.8097111
6 18-Feb-2018 1.2938001
7 25-Feb-2018 0.95799756
8 04-Mar-2018 0.81667918
...