2023/08/22
Windows版Office Lensの代替、類似アプリ PerspectiveImageCorrection
jsonのデータをGoogleスプレッドシートに書込み Pythonより
この手順でプロジェクトを作成する
Google ドライブのスプレッドシートにアクセスするための認証情報を取得したいです。Google Cloud プロジェクトを作成し、API を有効する手順を教えてください
Google ドライブのスプレッドシートにアクセスするためには、Google Cloud プロジェクトを作成し、API を有効化してから認証情報を取得する必要があります。以下に手順を示します:Google Cloud プロジェクトの作成と API の有効化:Google Cloud Console にログインします(https://console.cloud.google.com/)。右上の「プロジェクトを作成」ボタンをクリックして、新しいプロジェクトを作成します。プロジェクト名を入力し、適切な組織を選択します。プロジェクトが作成されたら、左上のプロジェクト名の横にあるメニューアイコンをクリックし、ダッシュボードに移動します。「API とサービス」 > 「ライブラリ」を選択して、利用したい API を検索します。ここでは「Google Sheets API」を検索し、有効にします。認証情報の作成:ダッシュボードから「API とサービス」 > 「認証情報」を選択します。「認証情報を作成」ボタンをクリックして、サービス アカウント キーを作成します。サービス アカウント名を入力し、役割として「プロジェクト」 > 「エディター」を選択します。その他の設定は必要に応じて調整できます。「次へ」をクリックし、キーのタイプとして JSON を選択します。これにより JSON ファイルが生成されます。「作成」ボタンをクリックして、JSON ファイルをダウンロードします。JSON ファイルの保存と使用:ダウンロードした JSON ファイルをスクリプトがあるディレクトリに移動します。スクリプト内で、JSON ファイルのファイル名を使用して認証情報を読み込むコードを記述します。例えば:pythonCopy codefrom oauth2client.service_account import ServiceAccountCredentialscredentials = ServiceAccountCredentials.from_json_keyfile_name('YOUR_JSON_FILE.json', ['https://spreadsheets.google.com/feeds', 'https://www.googleapis.com/auth/drive'])gspread ライブラリを使用して Google ドライブに接続し、スプレッドシートを操作するコードを記述します。以上の手順に従って、認証情報を取得し、スクリプト内で使用することで、Google ドライブのスプレッドシートにアクセスできるようになります。
■ダウンロードしたjsonを確認
1)ファイルパス >アクセスするときにpythonコードに記載
2)メールアドレス >スプレッドシートにアクセス権を付与
ex)prjspr@prjspr.iam.gserviceaccount.com みたいなアドレスがjsonファイル内にある
■Googleドライブにスプレッドシートを作成
前述のメアドに編集権を追加する
■VScodeに書き込んで実行
import requests
import json
import gspread
from google.oauth2 import service_account
# Google ドライブの認証情報のJSONファイルを指定
credentials = service_account.Credentials.from_service_account_file('C:/Users/tmp/prjspr-12345678.json', scopes=['https://www.googleapis.com/auth/spreadsheets'])
# Google ドライブに接続
client = gspread.authorize(credentials)
# スプレッドシートのキーを指定
spreadsheet_key = 'KEY'
#ウェブアクセスの情報設定
url = 'https://webconnect.yourdata.example/dataconn/'
headers = {
'aaa': '2023-08-21'
}
data = {
"bbb": "ccc"
}
response = requests.post(url, headers=headers, json=data)
json_data = response.json()
# Google ドライブのスプレッドシートを開く
spreadsheet = client.open_by_key(spreadsheet_key)
worksheet = spreadsheet.get_worksheet(0) # ワークシートを選択
# ヘッダーを書き込む
header_values = [["Order ID", "itemno", "amount"]]
worksheet.update('A1', header_values)
# 注文データをワークシートに書き込む
row = 2 # ヘッダーの下から行を開始
for order in json_data.get("orders", []):
order_id = order.get("id")
for line_item in order.get("line_items", []):
variation_name = line_item.get("variation_name")
gross_amount = line_item.get("gross_amount", {}).get("amount")
worksheet.update(f'A{row}', order_id)
worksheet.update(f'B{row}', variation_name)
worksheet.update(f'C{row}', gross_amount)
row += 1
print("Data has been saved to the Google Sheet.")
2023/07/08
インクジェットプリンターでインクづまりの解消方法 水か洗浄液
解決方法1)ヘッダーを水に漬け込む
解決方法2)プリンター洗浄液で洗浄する
ヘッダーの外せないプリンターはこれになります。
HL-L8360CDW レビュー 数カ月後の2回目 PostScript 互換 標準的なレーザープリンター
レビュー Brother HL-L8360CDW ちょっとだけ感想:コンパクトで便利なPostScript互換のA4レーザープリンタ レビュー 評判
■使ってみて
■良い点
■悪い点
■総評
・資金少なめのときのデザイン確認用も
・絶対にPostScript印刷したい人にはおすすめできない
・Windows多め、Mac数台の事務所でも混在のプリンターとして
レーザープリンター、A4、無線WIFI、自動両面対応なら、
※個人的にお土産でもらったら当たりだと思っている。
2023/03/11
WindowsでスペースキーでQuickLookする:QuickLook
2023/03/03
Powershell OpenCVSharp4を使う 基本だけ
NugetのDependenciesの項目から各種をダウンロード。
add-type -path "c:\00lib\system.runtime.compilerservices.unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll";
add-type -path "c:\00lib\system.memory.4.5.3\lib\netstandard2.0\System.Memory.dll";
add-type -path "c:\00lib\system.valuetuple.4.5.0\lib\net461\System.ValueTuple.dll"
add-type -path "c:\00lib\System.Buffers.4.5.1\lib\net461\System.Buffers.dll";
add-type -path "c:\00lib\system.numerics.vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll";
try
{
add-type -path "c:\00lib\opencvsharp4.4.7.0.20230115\lib\net48\OpenCvSharp.dll";
}
catch [System.Reflection.ReflectionTypeLoadException]
{
Write-Host "Message: $($_.Exception.Message)"
Write-Host "StackTrace: $($_.Exception.StackTrace)"
Write-Host "LoaderExceptions: $($_.Exception.LoaderExceptions)"
}
$size = New-Object OpenCvSharp.Size(240, 240) ;
$img = [OpenCvSharp.Mat]::new($size, [OpenCvSharp.MatType]::CV_8UC3, 1) ;
for ([int]$y = 0; $y -lt $img.Height; $y++)
{
for ([int]$x = 0; $x -lt $img.Width; $x++)
{
$pic = [OpenCvSharp.Vec3b]::new(255,80,3+$x);
$img.Set($x, $y, $pic);
}
}
[OpenCvSharp.Cv2]::NamedWindow("window") ;
[OpenCvSharp.Cv2]::ImShow("window", $img) ;
[OpenCvSharp.Cv2]::WaitKey();
[OpenCvSharp.Cv2]::DestroyWindow("window") ;
2023/02/27
Adobe CC のアカデミック版の商用利用 個人所有の端末に限定
Adobeウェブサイトのセールでも5万円を切る価格。
2023/02/25
レビュー Brother HL-L8360CDW ちょっとだけ感想:コンパクトで便利なPostScript互換のA4レーザープリンタ レビュー 評判
OKIやEPSONが珍しいほうなのだと思う。
PostScript3互換の日本語BR-Script3を搭載。Machintosh® など様々な環境に対応します。
2023/02/24
Chromeで検索するとサイドメニューで検索結果になる:chrome://flags/#side-searchをdisableに
2023/02/22
レビュー pCloudのかんたんな感想:iPhoneやスマホの画像保存に良さそう!
2023/02/08
powershellの基本:クラスを作ると値やオブジェクトをソートしたりできるよ!
そんなに本格的でないですがPowershellを使ってます。
Excelマクロの拡張&自動処理で使うことが目的。
そんなPowershellのオブジェクトクラスはすごく便利なので自分で作るとさらに便利。
そのクラスの使い方を覚えるまでが苦労したので、ここに記録。
■茶番:Powrshell+excelとノートPCの話し
Excelを簡単に扱うならCOM Objectよりはimportexcelが楽です。
Apache License 2.0なのでサーバーでも使える。
https://github.com/dfinke/ImportExcel
PowershellでExcelの作成、Excel無しでもOK:Import-Excel
Exccelは単体アプリで1.5万ほど。
Word使うならLibreOfficeで十分かも?
ライセンスの移動すればずっと使える。
Microsoft Excel 2021(最新 永続版)|オンラインコード版|Windows11、10/mac対応|PC2台
軽く使うならWPSOfficeが便利。
Excel、Word、PowerPoint互換ソフト。3500円くらい。
PC間のライセンスの移動が簡単。中古PC買うとおまけでもらえる。
選択セルの十字の色付けが便利&なぜかCOM Objectも使える!
キングソフト WPS Office 2 - Personal Edition|ダウンロード版
MS Excelで開かなくときもあるよ!
そのときはxls保存してxlsx保存で開ける。
フォントはフリーので。
2023年用、日本語のフリーフォント649種類のまとめ -商用サイトだけでなく紙や同人誌などの利用も明記
さらに、以下 ノートPCの記録
前に買った10万円のノートPCで使ってます。
Ryzen5搭載&2,560×1,920という不思議な画素数に惹かれた。
ASUS ノートパソコン Vivobook 15X OLED M1503QA Windows 11 WPS office付き 15.6型 M1503QA-L1202W メモリ8GB 薄型軽量 長時間駆動バッテリー 有機ELディスプレイ
といっても、中古のSurfacePro5のがよく使う。
軽いので持ち運び便利。6万くらいと安い。
AffinityDesignerもIllustratorもそれなりに動く。
マイクロソフト Surface Pro 5 Win11 Office H&B 2019搭載 12.3型(2736x1824) / Core i5 7300U /メモリ8GB / SSD256GB / LTE / 無線LAN / Bluetooth (整備済み品)
さらにヘビーユースなのが中古のノートPC。
Office使えて3.5万円。頑丈なので誰かが落としても壊れない。
マウスは有線なので無くならない。
SSD+Excel+テンキー+フルHD+WIFI+メモリ4GB以上なら困らない。
ビジネス用はWIFIなしもあるのでそこだけ注意。
Lenovo ThinkPad L560 / 第6世代Core i5 / メモリ:16GB / SSD:120GB / 15.6インチ ノートパソコン / Windows 11 / MS Office 2019 / テンキー、DVD、Webカメラ内蔵 / ミニDisplayport / USB3.0 / Wi-Fi (整備済み品)
20万で1台よりも、複数拠点に分けて使える端末があった方が安心できる。
なにかあったときになんとかなる。
iPad、iPhoneがあっても、ノートPCないと仕事がはかどる!
Powershellが便利。
■ここから本題
クラスのオブジェクトなのでSortとかできる。
$resArry = @(); #Objectを格納するArrayとして使っていきます。
class kihon
{
[int] $id;
[string] $names;
[int] $renban;
}
for($i=0;$i -lt 10;$i++)
{
$objKihon = New-Object kihon; #Objectになる
$objKihon.id = $i;
$objKihon.names = "kihon" + $i;
$objKihon.renban = Get-Random -Maximum 200 -Minimum 1;
$resArry += $objKihon; #配列として追加
}
$resArry
id names renban
-- ----- ------
0 kihon0 93
1 kihon1 190
2 kihon2 8
3 kihon3 82
4 kihon4 57
5 kihon5 159
6 kihon6 158
7 kihon7 134
8 kihon8 21
9 kihon9 191
$resArry | Sort-Object -Property renban #連番でソートする
id names renban
-- ----- ------
2 kihon2 8
8 kihon8 21
4 kihon4 57
3 kihon3 82
0 kihon0 93
7 kihon7 134
6 kihon6 158
5 kihon5 159
1 kihon1 190
9 kihon9 191
クラスのなのでメソッドも作れます。
1)よくやるWindowsの作業をPowershellで書く
2)WindowsのVPSをレンタルサーバーで時間ごとに回す
3)自動処理する!
これを外部からhttpでアクセスしてウェブアプリ化を目指す。
単純なものほど保守しやすいのが理由。
参考リンク)
↓とってもわかりやすい!
MURA's HomePage様
超簡単な PowerShell Class の使い方(その1)
http://www.vwnet.jp/windows/PowerShell/2017082001/PSv5Class01.htm