| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | #!/usr/bin/python3import sysimport codecsimport tracebackimport redisimport requestsimport reimport pandas as pdimport randomimport urllibimport jsonimport gspreadimport datetimefrom gspread_pandas import Spread, Clientfrom oauth2client.service_account import ServiceAccountCredentialsimport osfrom itertools import islicedef save_sheet(df,filename,tabname,startpos='A1'):    scope = ['https://spreadsheets.google.com/feeds',            'https://www.googleapis.com/auth/drive']    credentials = ServiceAccountCredentials.from_json_keyfile_name('/Users/zooeytsai/kw_tools/INNNews/innnews-d27b01472ba2.json', scope)    gc = gspread.authorize(credentials)    spread = Spread(filename,creds=credentials)    spread.df_to_sheet(df, index=False, sheet=tabname, start=startpos, replace=False)def get_sheets(filename):    result=[]    scope = ['https://spreadsheets.google.com/feeds',            'https://www.googleapis.com/auth/drive']    credentials = ServiceAccountCredentials.from_json_keyfile_name('/Users/zooeytsai/kw_tools/INNNews/innnews-d27b01472ba2.json', scope)    gc = gspread.authorize(credentials)#    files=gc.list_spreadsheet_files()#    print(files)    spread = Spread(filename,creds=credentials)    df=spread.sheet_to_df(sheet='2022')    for idx, row in islice(df.iterrows(), 1, None):        r1=row[1].strip()        if len(r1)>1:            r2=row[2].strip()            r3=row[3].strip()            if "病假" not in r1:                result.append({'kw':r1+" "+r2+" "+r3})            else:                pass    return resultresult=get_sheets('引新聞INNEWS稿單xSEO優化')js=json.dumps(result, ensure_ascii=False)print(js)# r = redis.Redis(host='db.ptt.cx', port=6379, db=1,password='choozmo9')# r.set('innews_sheet',js)#    spread.df_to_sheet(df, index=False, sheet=tabname, start=startpos, replace=False)#
 |