我正试图用漂亮的汤将HTML表格刮入大熊猫中。
网址为https://www.investing.com/equities/exxon-mobil-income-statement
我在HTML代码(id =“ rrtable”)中标识了该表,但是我一直在努力将其解析并放入熊猫数据框。
该网站返回了403错误,因此我必须首先设置标题以绕过403。
我期望看到一个包含5列和5行财务数据的数据框,但是我只是得到了未解析的标头,没有任何内容。哪里出问题了?
#!/usr/local/bin/python3
import requests
from bs4 import BeautifulSoup
import pandas as pd
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'}
url = "https://www.investing.com/equities/exxon-mobil-income-statement"
page = requests.get(url, headers=headers)
soup = BeautifulSoup(page.content, 'html.parser')
table = soup.find_all(id="rrtable")
df = pd.DataFrame(table)
print(df)
任何帮助将不胜感激!
谢谢
答案 0 :(得分:1)
import requests
import pandas as pd
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/74.0'}
r = requests.get(
"https://www.investing.com/equities/exxon-mobil-income-statement", headers=headers)
df = pd.read_html(r.content)[1]
df.to_csv("data.csv", index=False)
输出:view-online
输出样本: