商品の価格情報を簡単に取得したい時とかありますね。さらにリストにして一気に取得したい。取得した価格情報を使って何かをしたい。 そういった時にはスクリプトで価格情報を一括して素早く取得できれば楽です。 今回はGAS(Google Apps Script)で指定したURLの商品名、価格情報を取得するスクリプトです。 価格comのHTMLを確認 商品名 価格comの商品名は以下のようにh2タグで囲まれています。 <h2 itemprop=”name”>iPhone X 256GB SIMフリー</h2> そのためh2タグで囲まれている部分の文字列を取得するようにします。 しかし残念ながらGASでは指定したタグを取得するgetElementsByTagNameが使えません。 そのためタグから文字列を取得する関数を作って対応します。 参考 GASでのgetElementsByTagNameっぽいもの
はじめに 後藤銃士です。最近の趣味はWebプログラミングスクールのマネタイズの仕組みを調べることです。 そのために Google で検索をしているのですが、こういうのって1度に50〜100サイトぐらいざっとみないと大枠がつかめないことが多いと思うのです。で毎回感想を簡単に記録しておきたい。 そのために検索結果からリンクを踏んで該当サイトへいき、URLとサイト名を手でスプレッドシートに書くのは億劫!というわけで、 「Google検索結果のURLとタイトルを自動でスプレッドシートに追加する」GASを作りましたので共有いたします。 予め用意しておくのは、スプレッドシートと「検索ワード」という名前のシートです。検索する際、「検索ワード」シートに検索文字をいれてGASを起動すると、「検索ワード」でシートを追加し、そのシートに検索結果を追加してくれます。私的にすこぶる便利。 この機能が役に立つのは 広
I'm using Google Apps Script for a lot of things - from automate tasks to data analysis. I have discovered, that there was repetitive use-case: scrape data from web and parse exact value from HTML source code. If you are novice in programming, you probably know, that's difficult to write and use regular expresion. For me too :) I have written Google Apps Script library, which helps you to parse d
前置き 自分の居合道の師匠がペンションを運営しているのですが、予約ミスを防ぐために「電話かFAXのみ」しか予約を受け付けていませんでした。 さすがにそれはこの時代、使いにくいだろう、ということで、ウェブサイトの全面リニューアル時に予約フォームの仕組みを作った時の話です。 現物はこれです。 https://mugenkan.jp/inquiry/ ページを見ていただければわかりますが、Google Formを使ってます。 なぜ電話とFaxだけなのか 師匠は80才ながらパソコンで文章を書いたり、居合の指導をしながら撮影した動画を編集してDVDを弟子に作ってあげたり、と、実はかなりハイスペック。 スマホもばっちり使いこなしています。 なんと「The Card」という20年以上前の顧客データベースをWindows 10でも現役で使いこなしている人。 ではなぜ電話とFaxだけなのかというと、それは奥
Google Apps Scriptで出退勤の発報botを作った こんばんは、葛の葉です。 ちょっと前に、GoogleAppsScriptでdiscordのbotを作ったのですが、なんか社長が偉く気に入ったらしくブログの記事に書いてちょんまげって言われて、まぁ、書くことにしました。 Google Apps Scriptで出退勤の発報botを作った どういうbotを作ったのか botの作り方 GoogleSpreadsSheetsのGoogleAppsScriptとDiscordのWebhookの連携。 編集されたセルの行と列の番号を取得する。 編集された氏名と日付を取得する。 当日を含めた一週間の日付データを取得しリストに格納する。 日付が当日を含めた一週間(8日間)の中に存在しているかを確認する。 セルの編集前の値と編集後の値を取得する。 Discordのwebhookを使って送信する。
GASでこんな事が出来るよ。という一例として書かせていただきます。 事の成り行き 事の始まりは、ある飲み会の時に自社の営業部門のマネージャ(M)から言われた一言。 M「あのさ。今、うちって社用車を使ったら紙に運転日報を記録して管理してるじゃん?それをやめようと思ってスプレッドシートで管理しようとしたんだけど、毎回スプレッドシートにアクセスして記入するのって億劫だしiPhoneからだと入力しにくくて。。。なんか良い感じに、アプリケーション作ってくれない?」 私「あ、なるほど。ならGsuite(google)だけで完結する、アプリケーション作りますよ。ちょうど明日から出張だったんで、行き帰りの新幹線の中ででも作っときますね。」 という事があり、運転日報をGASで運転日報を作りました。 まずは、完成して現在運用している画面を見てください。 後半で画面の全体と説明を行いたいと思いますが、このような
これはなにか GoogleAppsScriptはWebAPIとして公開できる便利な機能がある Web Apps GoogleAppsScript内で使用するAPIには上限があったりするのだがWeb Appsについての記載は特に見つけられない Quotas for Google Services おそらく上限はないのだが、実際に外部公開用のサイトで利用するにあたって勘で使うのはちょっと怖い ということで実験してみた 方法 スプレッドシートの中身をシンプルにJSONで返すAPIを想定 スプレッドシートの中身はとりあえず30×30くらいにした このAPIに0.5秒おきに1000回RequestしてみてResponseをチェックする 合計30分くらいかかる コードはこんな感じです function doGet(e){ const res = getData() return ContentServ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? スプレッドシートを Web API 化するアプローチとして Google Apps Script を使ったやり方があります。 最近、人気記事になっているのがまさにそのパターンですね。 3分で API を作って世の中にデプロイするライブコーディング〜今日から君もスピードスターエンジニア〜 しかし、Google Apps Script を使った手法には次のような弱点があるため、簡易的なものにしか使えません。1 URLを自由に設定できない リクエスト数など各種制限 本記事では、サーバーやクライアントなど好きな環境からスプレッドシートを読み込む
qiita.com このエントリーはAtlassian(JIRA , Confuence, Trello, Bitbucket)のTips Advent Calendar 2017の6日目です。 第25回 Tokyo Atlassian ユーザーグループで同名の登壇をしてきました。 augj.connpass.com soudai.hatenablog.com soudai.hatenablog.com soudai.hatenablog.com 登壇資料の中にも書いたけどTrelloで見たいのはカードの状態ですが、ついつい作るのが面倒なタスクはカードを作らずにシュッとやってしまいがちではないでしょうか。それ自体はすごく気持ちがわかりますが「シュッとやるタスクが沢山ある」場合に作業が暗黙的になりがちです。ですのでカードの管理を自動化するのはとても良いことです。 やり方は色々あって繰り返し作
この記事は CAMPHOR- Advent Calendar の16日目の記事です。 ytmatsuge です。 普段は六本木の会社で新規事業のビジネスサイドを担当しております。 本日は、非エンジニアの私が、同窓会委員の負担を減らすべく、出欠確認・名簿更新の自動化に携わった話をまとめてみます。 自動確認メールの送信 自動更新名簿の作成方法 上記のような技術的な話はもちろんですが、「母世代でも利用しやすいサービス企画・設計」「最小限のコストで問題解決する方法」など、業務上の目的で実際に利用されるサービスをつくるにあたっていくつかハードルがあったので、少しでも参考にしていただければと思います。 改善前の状況 改善前の状況では、同窓会事務局と卒業生がメールでやり取りをし、 その情報をエクセルに転記しリストを作成していました。図にすると次のような流れになります。 これを見た若者は いや、 LINE
Google Apps Scriptの無料制限メモ Google Apps Scriptの無料制限のメモ. 以下のページにまとめられている. Quotas for Google Services | Apps Script | Google Developers 制限一覧 操作 一般ユーザー(gmail.com) カレンダーの予定の作成 5000 個/日 連絡先の作成 1000 個/日 ドキュメントの作成 250 個/日 1 日あたりのメール受信者 100 個/日 Gmail の読み取りと書き込み(送信以外) 20000 個/日 グループの読み取り 2000 個/日 JDBC 接続 10000 個/日 JDBC 接続の失敗 100 個/日 プレゼンテーションの作成 250 個/日 プロパティの取得または設定 50000 個/日 SOAP の呼び出し 5000 個/日 スプレッドシー
gistfile1.gs ��dT�U �\lT�U // slackのwebhook URL var postUrl = "https://hooks.slack.com/services/xxxxxxxxxxx"; // 通知したいslackのチャネル(部屋) var postChannel = "#n_app_review"; // 抽出元のGmailのラベル var checkLabel = "TO_ME"; function myFunction() { // 未読の指定ラベル を検索 var threads = GmailApp.search('is:unread label:' + checkLabel); var count = threads.length; Logger.log("対象件数:" + threads.length); for(var i = 0; i <
You can get/extract data from a URL via Google Apps Script, Just pass the XPath and URL to monitor. I have setup a Script that continuously monitors YCombinator's Top post, When it changes I get a Mail with the link. function getDataFromXpath(path, url) { var data = UrlFetchApp.fetch(url); var text = data.getContentText(); var xmlDoc = Xml.parse(text, true); // Replacing tbody tag because app scri
必要なもの ネット環境 Google SpreadSheet スクリプトの作成 1.Googleスプレッドシートを開き、ファイルメニュー「ツール」→「スクリプトエディタ」と選択します 2.スクリプトエディタのファイルメニュー「ファイル」→「新規作成」→「スクリプトファイル」を選択します スクリプトファイル名は拡張子を除いて入力すると、自動的に「.gs」ファイルとして作成されます。 GET // アクセス先 var url = "http://www.google.co.jp/" // GETリクエスト var response = UrlFetchApp.fetch(url); // HTMLの結果を取得(引数のcharsetは設定したほうが良い) var content = response.getContentText("UTF-8"); POST // POSTデータ var pay
Google Apps Scriptは、結構なんでもできて、特定URLにアクセスして、その情報を取得したりもできる。 例えば定期的にcsvをとってきて、それをスプレッドシートに書き込んだりできる。 Basic認証付きのURLにアクセスする場合は以下のようにする。base64の関数がデフォルトで用意されてるとかいろいろ気がきいてますね。 var url = "http://example.com/admin/"; var user = "hoge"; var pass = "huga"; var options = { "headers" : {"Authorization" : " Basic " + Utilities.base64Encode(user + ":" + pass)} }; var response = UrlFetchApp.fetch(url, options); 本
Google Apps Scriptの中で地味ながら、その活用の幅が実に広いものとして、スクリプトトリガーがあります。いわゆる時限式で作動させるための仕組みなのですが、スクリプトトリガーは、スクリプトエディタの画面から入り、手動で登録するのが通常のフローです。しかし、「スクリプト内でテンポラリで時間トリガーを設置したい」であったり「トリガーの設置し直し」など、スクリプトエディタにいちいち入らず設定したいシーンがボチボチあります。そういった場合には、スクリプトからトリガーの設置や削除が出来ると便利です。二重に登録してしまったりすると、二回発動したり、片方しか発動しなかったりするので、慎重に設置をしましょう。 これらトリガーは大きく分けて4種類あり、1.時限作動式 2.開いた時 3.編集時 4.フォーム送信時を設置することが可能です。主に使うのは時限作動式と、フォーム送信時の2つになります。但
Google Apps Scriptで指定した日時に処理を行わせるようにしてみます。 使い方・注意点 前回の記事ではスプレッドシートを操作するためにスプレッドシートからエディタを開きましたが、今回はGoogleアカウントにログインして、Google Apps Scriptのエディタに直接アクセスして使用します。 指定した時間から15分前後の誤差がある場合があるようです。 そのため、厳密な時間指定はできないようなので注意が必要です。 スクリプトファイルが不要になって削除しても、トリガーは残ります。 そのため、例えば毎週処理を実行するような指定をしていた場合、スクリプトファイル削除後も処理は実行され続けます。 この記事の最後に記載していますが、スクリプトファイルを削除する前にトリガーを削除するようにしてください。 X秒/分/時間後に実行する 一定時間後に処理を実行したい場合、after()を使
はじめに 多くのプログラマーにとって、最大の関心事は主に2つです。 いかに良いコードを書くか いかに奥さんのご機嫌を取るか 今回のテーマは「2. いかに奥さんのご機嫌を取るか」という課題をGoogle Apps Scriptで解決するという話です。 夫婦円満の秘訣は、財布を奥さんに預けることである 先人達は、後世の若者たちのために良い知恵を遺してくれました。リスクを共にする夫婦間でお金の管理をクリアーにすることが夫婦円満の秘訣ということです。我が家でも先達の知恵に倣い、お給料を全て奥さんに預けてお小遣い制を導入しています。 しかし、お金の管理を不透明にするやっかいな代物があります。ネットショッピングに欠かせないクレジットカードです。10年ほど前であれば、クレジットカード利用明細が毎月カード会社から郵送されてきたので、奥さんが利用明細を見ることで出費の透明性が担保されていました。しかし、最近
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く