tag:crieit.net,2005:https://crieit.net/users/yanagiha/feed
yanagihaの投稿 - Crieit
Crieitでユーザーyanagihaによる最近の投稿
2019-12-05T17:59:15+09:00
https://crieit.net/users/yanagiha/feed
tag:crieit.net,2005:PublicArticle/15583
2019-12-05T17:33:50+09:00
2019-12-05T17:59:15+09:00
https://crieit.net/posts/08925126ad43b99775708a6a11915d9a
各種リンク
<p>-各種Link-<br />
<a target="_blank" rel="nofollow noopener" href="http://yanagihatei.hatenablog.com/">絵ブログ</a><br />
<a target="_blank" rel="nofollow noopener" href="https://note.mu/yanagihatei">漫画とかイラストとかのnote</a><br />
<a target="_blank" rel="nofollow noopener" href="https://www.pixiv.net/member.php?id=5153940">pixiv</a><br />
<a target="_blank" rel="nofollow noopener" href="https://willow-leaf.hatenadiary.jp/">読書・短歌・ゲーム雑記ブログ</a><br />
<a target="_blank" rel="nofollow noopener" href="https://odaibako.net/u/yanagihatei">お題箱</a><br />
<a target="_blank" rel="nofollow noopener" href="https://bookmeter.com/users/70638">読書メーター</a><br />
<a target="_blank" rel="nofollow noopener" href="https://www.amazon.co.jp/registry/wishlist/2T063Y6YQ4M3P/ref=cm_sw_r_tw">ほしいものリスト</a></p>
<p>-Twitter-<br />
メイン→@yanagihatei<br />
アルフヒルドちゃん→@alfhild_chan<br />
発言模倣?bot→@yngh_bot</p>
yanagiha
tag:crieit.net,2005:PublicArticle/15457
2019-10-07T09:13:01+09:00
2019-10-07T09:31:08+09:00
https://crieit.net/posts/GAS-5d9a830d875a5
GASでいいねしたツイートをいいねの数とリツイートの数と一緒に記録するやつ
<p>特定のユーザーのいいねしたツイート一覧を、ツイートに付いたいいねの数とリツイートの数も一緒に記録したくなって作りました。トリガー機能を使うと、定期的にいいねが記録されるようになります。</p>
<p><a target="_blank" rel="nofollow noopener" href="https://qiita.com/yanagiha/items/40c7f0cc140eace11bd8">GASで自分のツイートを取得してスプレッドシートに記録するやつ<br />
</a><br />
この記事も合わせて読むとわかりやすいかもしれません。</p>
<p><img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/406061/d311791c-7655-7d87-1dba-cb3ee543444d.png" alt="スクリーンショット 2019-10-07 3.40.44.png" /></p>
<p>このように記録されます。</p>
<pre><code class="javascript"><br /><br />function getFav(){
var service = twitter.getService();
var json = service.fetch("https://api.twitter.com/1.1/favorites/list.json?screen_name=いいねを取得したいアカウントのscreen name&count=100");
var array = JSON.parse(json);
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('いいねを記録したいシートの名前');
var lastRow = sheet.getLastRow() +1;
var lastId = sheet.getRange("F2").getValue();
for(var i = 0; i <= array.length -1; i++) {
var int = parseInt(i);
if(i === 0){
var recId = array[int]["id"];
sheet.getRange("G2").setValue(recId);
}
var id = array[int]["id"];
if(id > lastId){
var time = array[int]["created_at"];
var userId = array[int]["user"]["id_str"];
var json = service.fetch("https://api.twitter.com/1.1/users/show.json?user_id="+userId+"&include_entities=false");
var array2 = JSON.parse(json);
var screenName = array2["screen_name"];
var text = array[int]["text"];
var favorite_count = array[int]["favorite_count"];
var retweet_count = array[int]["retweet_count"];
sheet.getRange(lastRow,1).setValue(time);
sheet.getRange(lastRow,2).setValue(screenName);
sheet.getRange(lastRow,3).setValue(text);
sheet.getRange(lastRow,4).setValue(favorite_count);
sheet.getRange(lastRow,5).setValue(retweet_count);
sheet.getRange(lastRow,6).setValue(id);
}
lastRow = lastRow + 1;
}
</code></pre>
<p>いいねを100件取得して、idが以前記録したツイートより大きければ記録する…といった感じです。<br />
何かあったら気軽にコメントください。</p>
yanagiha
tag:crieit.net,2005:PublicArticle/15456
2019-10-07T09:10:43+09:00
2019-10-07T09:10:43+09:00
https://crieit.net/posts/GAS
GASで自分のツイートを取得してスプレッドシートに記録するやつ
<p>急にツイ消ししたくなった場合に備えて、自分のツイートをグーグルスプレッドシートに記録しておくことにしました。</p>
<p><a target="_blank" rel="nofollow noopener" href="https://qiita.com/golyat/items/6b430986dbfd8dd1c239">GASでTwitterの投稿とタイムライン取得</a><br />
こちらの記事を参考にして書いてみました。</p>
<p><img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/406061/43b4b722-3b85-bb5e-be81-133be3f4d987.jpeg" alt="20190828150010.jpg" /><br />
画像のように記録されます。</p>
<pre><code class="javaScript"><br /> var twitter = TwitterWebService.getInstance(
'**********', // 作成したアプリケーションのConsumer Key
'**********' // 作成したアプリケーションのConsumer Secret
);
// 認証を行う(必須)
function authorize() {
twitter.authorize();
}
// 認証をリセット
function reset() {
twitter.reset();
}
// 認証後のコールバック(必須)
function authCallback(request) {
return twitter.authCallback(request);
}
function getMyTweets() {
var service = twitter.getService();
var json = service.fetch("https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=ツイートを取得したいユーザーのid&count=30");
var array = JSON.parse(json);
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('ツイートを保存したいシートの名前');
var lastRow = sheet.getLastRow() +1;
var lastId = sheet.getRange("D2").getValue();
for(var i = 0; i <= array.length -1; i++) {
var int = parseInt(i);
if(i === 0){
var recId = array[int]["id"];
sheet.getRange("D2").setValue(recId);
}
var id = array[int]["id"];
if(id > lastId){
var time = array[int]["created_at"];
var text = array[int]["text"];
sheet.getRange(lastRow,1).setValue(time);
sheet.getRange(lastRow,2).setValue(text);
sheet.getRange(lastRow,3).setValue(id);
}
lastRow = lastRow + 1;
}
}
</code></pre>
<p>自分のツイートを最新のやつから30件まで取得して、idが以前取得したツイートより大きければスプレッドシートに書き込む……という感じです。</p>
<p>ここ違うよ〜とかもっと良い書き方あるよ〜って場合は気軽にコメントください。</p>
yanagiha