[英]How to download raw data from google spread sheet in python
我想要谷歌電子表格中顯示的數據,但沒有可用的下載選項。 我嘗試使用 Beautifulsoup4 庫,但無法弄清楚。
這是數據: https : //docs.google.com/spreadsheets/d/e/2PACX-1vSc_2y5N0I67wDU38DjDh35IZSIS30rQf7_NYZhtYYGU1jJYT6_kDx4YpF-qw0LSlGsBYP8pqM_html#a1Pd
您可以使用google-api-python-client
。
此處提供了快速入門文檔。
它歸結為這樣的事情:
SAMPLE_SPREADSHEET_ID = '<your spreadsheet id>'
SAMPLE_RANGE_NAME = '<your desired range>'
service = build('sheets', 'v4', credentials=creds)
sheet = service.spreadsheets()
result = sheet.values().get(spreadsheetId=SAMPLE_SPREADSHEET_ID,
range=SAMPLE_RANGE_NAME).execute()
values = result.get('values', [])
但請務必閱讀完整的快速入門以獲得完整的圖片。 (示例代碼取自那里。)
您嘗試使用的美麗湯方法將像這樣工作。
read_url = urllib.request.urlopen('your_sheet_url').read() #read the url
data = BeautifulSoup(read_url,"html.parser")
table = data.table #extract table
output_rows = []
df = pd.DataFrame(columns=['State','','Confirmed','Recovered','Deaths','Active','Last_Updated_Time'])
for table_row in table.findAll('tr'): #iterate though rows
columns = table_row.findAll('td')
output_row = []
for column in columns: #iterate though columns
print(column.text)
output_row.append(column.text) #append into a list
print(len(output_row))
output_rows.append(output_row)
try:
df = df.append(pd.Series(output_row,index = df.columns.tolist()),ignore_index = True) #add to the final dataframe
except:
pass
df.toexcel("Output.xlsx") # save the datafram as excel file
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.