以下で、自分のInstagramのフォロワーの数を取得しています。
これをスプレッドシートに出力し推移を見たいと思ってます。
実行をするとcolaboratory上では結果(フォロワー数)が表示されますが、スプレッドシートには何も表示されません。
どのようにしたら表示がされるのか、お分かりの方、ご教示いただけますと幸いです。
import json import re import requests from typing import Dict from bs4 import BeautifulSoup class SocialMedias(): @classmethod def get_statuses(cls) -> Dict: statuses = {} statuses['instagram1'] = cls.__get_instagram_statuses('https://www.instagram.com/*******/') return statuses @classmethod def __get_instagram_statuses(cls, url: str) -> Dict: statuses = {} # ToDo: error handling response = requests.get(url) soup = BeautifulSoup(response.content, 'lxml') js = soup.find("script", text=re.compile("window._sharedData")).text data = json.loads(js[js.find("{"):js.rfind("}")+1]); statuses['follower_count'] = data['entry_data']['ProfilePage'][0]['graphql']['user']['edge_followed_by']['count'] return statuses @staticmethod def __get_element_by_class(soup: BeautifulSoup, class_name: str) -> BeautifulSoup: return soup.find(attrs={'class': re.compile('^' + class_name + '$')}) social_medias = SocialMedias() print(social_medias.get_statuses()) # Access to Google Spread Sheet from google.colab import auth import gspread from oauth2client.client import GoogleCredentials auth.authenticate_user() gc = gspread.authorize(GoogleCredentials.get_application_default()) # Open spreadsheet by key wb = gc.open_by_key('*******************') worksheet = wb.worksheet('*********') sp = gc.open_by_key(sheet_id) wks = sp.worksheet(sheet_name) wks.update_acell print('書き込み完了')
あなたの回答
tips
プレビュー