yucco

謎解きが趣味な駆け出しエンジニアです。

yucco

謎解きが趣味な駆け出しエンジニアです。

マガジン

  • へっぽこ学習記録

  • コードのあんちょこ。

  • GASを便利に使いたい

  • わたしがよく見るやつ

    全ての記事は未来の自分の為に書いているのですが、その中でも特に未来の私が良く読みに来るより抜き記事をまとめてあります。 そう、これもまた未来の私の為のまとめ。

  • ぱいそん3がかけるようになりたい。

    python3の学習記録あれこれをまとめています

最近の記事

【GAS】HTMLサービスを使ってクリックできるURLを表示したり、非同期処理問題をなんとかする

やりたいこと①:スプレッドシートの「入力用」シートに入力した情報を、「出力用」シートに転記・整形して、出力用シートをPDFとして書き出すという処理をボタン一つでやりたい。 ②:①で書き出してドライブに保存したPDFのURLを画面上に表示し、クリックで表示できるようにしたい 問題点① 転記・整形する処理とPDF書き出し処理を別のfunctionとして記述すると(おそらく)処理スレッドが分かれてしまう関係で、転記した情報が反映されていないままの出力用シートが出力されてしまう

    • 【GAS】セルから取得したDate型の日付をStringにフォーマットする

      セルに入力した日付を取得すると、Date型になってしまっているので、必要に応じてフォーマットします。 結論function Date型をStringにフォーマット(値){ // Date型かどうかを確認 if(Object.prototype.toString.call(値) != "[object Date]"){ throw Error("引数はDate型で渡してください") } // フォーマットして返却 return Ut

      • 【Python3+Firestore】PythonアプリからFirestoreにアクセスする2024

        以前の記事 を参考に新しいアプリを作ろうとしたら動かなかったので情報を更新していきますよっと。 今回は、既にFirestoreデータベースは作ってある前提でさくっとデータを取得しに行きます。とりあえずテスト用にデータベースを作ってみたい場合はGUIからやればすぐできる。 公式ドキュメントより始めよはい 言われた通りにやってみる管理用パッケージをインストール $ pip install --upgrade firebase-admin 推奨パッケージが変わっています

        • 【Java】StringからIntにしたりDateからStringにしたりStringをDateにしたり

          テスト用に、データベースに入れる情報を用意→データベースに登録→登録した情報を取り出して比較、というロジックを作ったら、入れる用のデータはJSONで受け取る前提だから全部Stringで渡さなきゃいけなくて、出してくるデータはテーブルカラム通りの型で出てくるもんだから困ったね、ということで全部変換していくよ! とりあえずざっくりキャストできればOK!細かいフォーマットの違いとか例外が発生する文字が入ってきたらとかスレッドセーフとかの面倒なことは考えないよ!! Stringから

        【GAS】HTMLサービスを使ってクリックできるURLを表示したり、非同期処理問題をなんとかする

        • 【GAS】セルから取得したDate型の日付をStringにフォーマットする

        • 【Python3+Firestore】PythonアプリからFirestoreにアクセスする2024

        • 【Java】StringからIntにしたりDateからStringにしたりStringをDateにしたり

        マガジン

        • GASを便利に使いたい
          19本
        • コードのあんちょこ。
          121本
        • へっぽこ学習記録
          180本
        • わたしがよく見るやつ
          24本
        • ぱいそん3がかけるようになりたい。
          73本
        • Javaのお勉強をする
          34本

        記事

          【Java+MyBatis】データ登録系API作成時に、登録に成功したレコードの、自動採番で付与されるIDを返却する

          「このデータを登録しておくれ」「はいよ、登録したよ、レコード番号〇〇番として登録できたよ」というAPIを作る際、肝心の「レコード番号〇〇番として登録できたよ」をどうやって取得しようか。というお話。 レコード番号は通常自動採番に設定するじゃないですか。いちいち最新のレコード番号取得して+1してとかしないじゃないですか。あんまり。 でも、SQLでInsertする処理は登録処理をするだけで、「今まさに登録したこのレコードで自動採番された番号はこちらです」は返してくれないじゃないで

          【Java+MyBatis】データ登録系API作成時に、登録に成功したレコードの、自動採番で付与されるIDを返却する

          【GAS】APIを叩いてPOSTでJSONを送信したり、その通信をPostmanでエミュレートしてみたり

          GASからAPIのエンドポイントへアクセスして、POSTで情報送信出来るようにしたいの巻きです。 結論// データベース登録用会員データ.gs// sampleclass 会員データ{ constructor(名前, 電話番号, メールアドレス){ this.name = 名前; this.tel = 電話番号; this.mail = メールアドレス; } JSONとして取得(){ return stringify(this) }} //

          【GAS】APIを叩いてPOSTでJSONを送信したり、その通信をPostmanでエミュレートしてみたり

          【GAS】VLOOKUPみたいなことをfindを使って華麗にやる

          VLOOKUPがそのままGAS上でも使えれば何も問題ないんですが 結論function lookup(target_code){ // A列に商品名、B列に商品コードが入っているものとする const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const vals = sheet.getDataRange().getValues(); // シートの値を二次元配列化しておく //

          【GAS】VLOOKUPみたいなことをfindを使って華麗にやる

          【Python3】例外発生時、Exceptionにファイル名と行数を追加してエラーメッセージをわかりやすくする

          「float divition by zero」と一言だけ言われても困るんですよ。 結論sys.exc_info()で取れる # 例外を一旦受け取って再送しているファイルを想定import systry: result = 1 / 0 # ZeroDivisionErrorが起きるexcept Exception as e: exception_type, exception_object, exception_traceback = sys.exc_inf

          【Python3】例外発生時、Exceptionにファイル名と行数を追加してエラーメッセージをわかりやすくする

          2023年ふりかえり

          特に書くことはないんですが、折角結構続いていた〇ヶ月連続投稿の記録が途切れてしまうのも嫌なので、今年何をやっていたかをちょっと振り返ってみようかななんて思います。 今年の一本目pythonで、関数から、手軽に複数の戻り値を返したかったようですね。 何に使ったかはもう覚えておりません。 こんな戻り値の返し方は大層不親切に思いますが、なんかのパッケージでこれ使ってるんだよな確か。最初の戻り値要らないから-で受け取って抹消する、っていうTIPSだけ覚えています。 今年書いた中で

          2023年ふりかえり

          【Javascript】「今週かどうか」を判定する

          ある日付が、「今週の出来事かどうか」を判定します。 結論function is_this_week(target_date){ // target_dateは、確認したい日付をDateオブジェクト化したものを渡す // 【STEP1:今日の日付を取得する】 let today = new Date; let today_day_index = today.getDay(); // 曜日が0~6までの数字で取れます // 【STEP2:直前の日曜日と次の土曜日を取得

          【Javascript】「今週かどうか」を判定する

          【Python】Seleniumのログ出力を止めたいんだ…!

          Seleniumを使っているプロジェクトで、こちらの記事でまとめたやり方でログ出力をしておりまして で、デバッグ用に全体のログ出力レベルをDEBUGまで下げたところ、Seleniumが逐一何もかもすべてログを吐くもんだからログが流れまくっちゃってとても困る!!!君はちゃんと動いている!!大丈夫!!!君のログレベルは別にINFOとかWARNINGとかでいい!! これはもうパッケージの中身弄るしかないのか…?! と思って調べたらちゃんと方法がありました。 Seleniumで

          【Python】Seleniumのログ出力を止めたいんだ…!

          【MySQL】合計や平均を集計するためのクエリを書く

          こういう表があったときに 商品名 | 販売数 | 日付-------|-------|------商品A | 1 | 10/1商品B | 1 | 10/1商品C | 1 | 10/1商品A | 2 | 10/2商品C | 3 | 10/3... 「10月中の商品Aの販売数の合計」とか「10/1の商品販売数の合計」とか「当月中の商品Aの1日当たりの平均販売数」みたいなものを、SQL文だけで計算したい時のためのクエリを作ります

          【MySQL】合計や平均を集計するためのクエリを書く

          【python3】PDFを作ってみる

          「文章入れたら段組してPDFにしてくれるやつ」がほしいので作っていこうと思います。 最終的にはどこで動かそうかなぁ………… プラグインのインストール$ pip install reportlab pythonでPDFを作るプラグインは色々あるようですが、とりあえず有名どころっぽいのを。老舗プラグインだそうですが、2023年10月現在、2023年6月に最新版がリリースされていることを確認しています。 とりあえず空のPDFファイルを作成してみるfrom reportlab.

          【python3】PDFを作ってみる

          【Python3でRPA】アラートが出たことを画像認識で検知する

          シリーズ「PythonからWindowsアプリを制御したい」Vol.2です。 RPAの導入はこちら。 「処理が終わりました」というアラートが出たことを画像認識で検知するようにしてみます。できたらさらに、エラーアラートが出ているかどうかも確認して、エラーは無視して進めたい。 処理が完了したアラートの画像を用意するはい用意。 自動化したい処理を手動で実施して完了アラートを出させてスクショして、不要な部分をトリミングしました。Photoshopがあれば一瞬ですね。 プロジェクト

          【Python3でRPA】アラートが出たことを画像認識で検知する

          【GAS】セルに入力したら発火する関数を使って簡易スマホアプリ作り

          SpreadsheetにGASを仕込んで、発火のためのボタンを作っても、PCから開いた時しか押せない問題。 でも出先でスマホでささっと動かしたい時もあるじゃん~ という時は、「セルに入力したら発火する」というトリガーを使うと良いと聞いたのでそれでアプリを作って見ます。 今回作るのは最高に単純なお小遣い帳……というか、「今月いくら使ったよ帳」です。使った金額を入力すると、今月いくら使ったかを計算して表示してくれるようにしたいです。 一々GAS使わなくても出来るじゃんと言う

          【GAS】セルに入力したら発火する関数を使って簡易スマホアプリ作り

          【Python3】WindowsアプリをRPAで制御することに挑戦する

          完全に自分用忘備録。 必要なのはpywinautoとpyautogui $ pip install pywinauto$ pip install pyautogui アプリケーションを起動するfrom pywinauto import Applicationapp = Application(backend="uia").start("C:\\Program Files\\Adobe\\Adobe Photoshop 2022\\Photoshop.exe") アホな

          【Python3】WindowsアプリをRPAで制御することに挑戦する