前提・実現したいこと
tweepyを使用してツイートを取得するプログラムを作成しています。
取得したツイートに付くurlが邪魔なので正規表現でurlを除く部分を書きました。
現在エラーメッセージは出ていないのですが、#問題箇所 部分の正規表現がうまくいっていないのか、csvからurlが除去できていません。
初心者なためかなり問題があると思うのですが、よろしくお願いいたします。
”しかし毎度expected string or bytes-like objectとエラーメッセージが出てしまいます。
print(type(tweet_list))で型の確認をしたのですがstr型で問題ないように思いました”
この問題はtweet_listが特殊な型だったのでjson.dumpsでエンコードして解決しました。
該当のソースコード
python
1import tweepy 2import csv 3import json 4import re 5 6consumer_key = "**********************" 7consumer_secret = "**********************" 8access_key = "**********************" 9access_secret = "**********************" 10 11auth = tweepy.OAuthHandler(consumer_key, consumer_secret) 12auth.set_access_token(access_key, access_secret) 13api = tweepy.API(auth) 14 15 16#ツイート取得 17tweet_list = [] 18 19for tweet in tweepy.Cursor(api.user_timeline,screen_name = "NHK_PR",exclude_replies = False,).items(): 20 tweet_list.append([tweet.text.replace('\n','')]) 21 22#問題箇所 23enc = json.dumps(tweet_list,ensure_ascii=False) 24for tweet in enc: 25 re.sub("https?://", "", enc) 26 27#csv出力 28with open('tweet.csv', 'w',newline='',encoding='utf-8') as f: 29 writer = csv.writer(f, lineterminator='\n') 30 writer.writerows(tweet_list) 31pass
補足情報(FW/ツールのバージョンなど)
Google Colaboratory を使用しています